尝试使用逗号分隔多个结果时遇到问题

时间:2014-08-25 08:00:29

标签: php mysql

我正在尝试从表中获取数据,当我需要打印结果时,我使用逗号分隔符来分割结果。但是我不想显示最后一个逗号。

请参阅以下代码:

 <?php if($result_sender2): 
      foreach($result_sender2 as $row_sender2): 
               echo $row_sender2->fname.','; 
      endforeach; 
      endif; 
 ?>

,结果是

Kunal,James, 

在上面的示例中,我使用的是逗号分隔符。它适用于我,但我不想在詹姆斯&#34;之后显示最后一个逗号。

5 个答案:

答案 0 :(得分:1)

您可以在一个数组中获取所需的所有值并在其上执行implode()函数 - http://php.net/manual/en/function.implode.php

答案 1 :(得分:1)

您可以使用修剪功能

<?php 
$list = "";
if($result_sender2): 
      foreach($result_sender2 as $row_sender2): 
               $list = $list . $row_sender2->fname.','; 
      endforeach; 
      endif; 
$list = trim($list, ",");
echo $list

 ?>

答案 2 :(得分:0)

检查它是否是数组中的最后一个对象:

<?php 
    if($result_sender2):
        $arrayLength = count($result_sender2); 
        foreach($result_sender2 as $row_sender2): 
            if(array_search($row_sender2,$result_sender2)+1 !== $arrayLength):
                echo $row_sender2->fname.','; 
            endif;
        endforeach; 
    endif; 
?>

答案 3 :(得分:0)

试试这个

 if($result_sender2):
  $cnt = sizeof($result_sender2); 
  $i=0;
  $str = "";
  foreach($result_sender2 as $row_sender2): 
    $str .= $row_sender2->fname;
    if($i<$cnt)
    {
       $str .= ",";
    }
    $i++;

 endforeach; echo $str; endif; 

答案 4 :(得分:0)

<?php if($result_sender2): 
  $count = 0;
  foreach($result_sender2 as $row_sender2): 
           echo $row_sender2->fname;
           if ($count < count($result_sender2)) {
               echo ',';
           }
           $count++;
  endforeach; 
  endif; 

&GT;