PHP - 从最后一个循环中删除逗号

时间:2013-02-05 06:14:55

标签: php while-loop

我在LOOP时有一个PHP,如果它是最后一个循环,我想从,删除最后一个逗号echo '],';

            while($ltr = mysql_fetch_array($lt)){
                echo '[';
                echo $ltr['days']. ' ,'. $ltr['name'];
                echo '],';
            }

9 个答案:

答案 0 :(得分:7)

创建一个包含元素的数组,使它们看起来像array = ([ELEMENT INFO], [ELEMENT INFO], [ELEMENT INFO]),然后用逗号implode数组。

答案 1 :(得分:6)

$str = '';
while($ltr = mysql_fetch_array($lt)){
    $str .= '[';
    $str .= $ltr['days']. ' ,'. $ltr['name'];
    $str .= '],';
}

echo rtrim($str, ",");

这将删除字符串

中的最后一个,

答案 2 :(得分:4)

我认为系统解决方案如下:

$separator = '';
while($ltr = mysql_fetch_array($lt)){
    echo $separator;
    echo '[';
    echo $ltr['days']. ' ,'. $ltr['name'];
    echo ']';
    if (!$separator) $separator = ', ';
}

没有count()的调用,没有implode()的额外迭代,没有额外的字符串操作,为任何(不可预测的)数量的结果做好准备。

答案 3 :(得分:3)

$result = mysql_fetch_array($lt);
for ($i=0;$i<=(count($result)-1);$i++) {
    $ltr = $result[$i];
    echo '[';
    echo $ltr['days']. ' ,'. $ltr['name'];
    echo ']';
    if(!count($result)-1 == $i){
        echo ',';
    }
}

答案 4 :(得分:1)

检查你有多少条目,制作一个&#34; Counter&#34;以及只在逗号不是最后一个循环时放入的条件。

答案 5 :(得分:1)

$arr = array();
while($ltr = mysql_fetch_array($lt)){
    $arr[] = '[' . $ltr['days'] . ' ,' . $ltr['name'] . ']';
}

echo implode(',', $arr);

答案 6 :(得分:1)

$res_array = array();

while($ltr = mysql_fetch_array($lt)){
   $res_array[] = '['.$ltr['days']. ' ,'. $ltr['name'].']';
}

$str = implode(",",$res_array);
echo $str; 

答案 7 :(得分:1)

将响应保存为var而不是回显它,然后使用substr删除最后一个字符。

      $response = "";
       while($ltr = mysql_fetch_array($lt)){
            $response .= '[';
            $response .= $ltr['days']. ' ,'. $ltr['name'];
            $response .= '],';
        }
      echo substr($response, 0, -1);

答案 8 :(得分:0)

//this one works
$result = mysql_fetch_array($lt);
for ($i=0;$i<=(count($result)-1);$i++) {
    $ltr = $result[$i];
    echo '[';
    echo $ltr['days']. ' ,'. $ltr['name'];
    echo ']';
    if(count($result)-1 != $i){
        echo ',';
    }
}