doubeishuai6598
2015-12-23 15:20
浏览 70
已采纳

将多维数组内插到PHP中的单个逗号分隔列表中

If I have an array like:

Array ( [0] => abcdef )
Array ( [0] => abcdef [1] => abcdef )
Array ( [0] => abcdef [1] => abcdef [2] => abcdef )
Array ( [0] => abcdef [1] => qwerty ) 

And want to create a comma separated list like:

abcdef, abcdef, abcdef, abcdef, abcdef, abcdef, abcdef, qwerty

How would I do this?

When I try and implode the array like this:

while($row = mysql_fetch_array($search)){ 
    $row2 = $row['scholarshipid']; 
    $newarray = unserialize($row2);
    $unique_array = array_unique($newarray, SORT_REGULAR);
    $commaList = implode(', ', $unique_array);
    echo "$commaList";
    //print_r($newarray); 
} 

$commaList = implode(', ', $unique_array);

I get:

abcdefabcdefabcdefabcdef, qwerty

图片转代码服务由CSDN问答提供 功能建议

如果我有一个类似的数组:

  Array([  0] => abcdef)
Array([0] => abcdef [1] => abcdef)
Array([0] => abcdef [1] => abcdef [2] => abcdef)  
Array([0] => abcdef [1] => qwerty)
   
 
 

并且想要创建逗号分隔的列表,如: \ n

  abcdef,abcdef,abcdef,abcdef,abcdef,abcdef,abcdef,qwerty 
   
 
 

我该怎么做?

当我尝试像这样内爆数组时:

  while($ row = mysql_fetch_array($ search)){
 $  row2 = $ row ['scholarshipid'];  
 $ newarray = unserialize($ row2); 
 $ unique_array = array_unique($ newarray,SORT_REGULAR); 
 $ commaList = implode(',',$ unique_array); 
 echo“$ commaList”; 
 /  /的print_r($ newarray);  
} 
 
 $ commaList = implode(',',$ unique_array); 
   
 
 

我得到:

  abcdefabcdefabcdefabcdef,qwerty 
   
 
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • dongshao8471 2015-12-23 15:36
    已采纳

    As from the comments it turns out that the output which you show us comes from a loop. So you first have to collect all arrays in each iteration into 1 variable, which you then can implode, e.g.

    $result = [];
    
    while($row = mysql_fetch_array($search)){
        $row2 = $row['scholarshipid'];
        $newarray = unserialize($row2);
        $unique_array = array_unique($newarray, SORT_REGULAR);
        $result = array_merge($result, $unique_array);
    }
    
    echo implode(",", $result);
    
    已采纳该答案
    打赏 评论
  • dougangxin5695 2015-12-23 15:32

    you can do it like this UPDATE

    $temp = array();
    while($row = mysql_fetch_array($search)){ 
        $row2 = $row['scholarshipid']; 
        $newarray = unserialize($row2);
        $temp = array_merge($temp, $newarray);
    
    }
    $commaList = implode(', ', $temp);
    print_r($commaList);
    

    and it's all done :P

    打赏 评论

相关推荐 更多相似问题