在最后删除逗号

时间:2012-02-20 18:28:44

标签: php loops comma

我需要帮助,如何从这个循环变量中删除最后一个逗号。

$image_meta .= "{\"id\":\"".$img_id."\",\"client\":\"".$img_desc."\",\"desc\":\"Test\"},";

FireFox似乎并不介意,但IE确实如此。

如果有办法甚至摆脱。=并以另一种方式循环我的数据,我会非常感激。

3 个答案:

答案 0 :(得分:4)

我们需要查看脚本的其余部分。 但是根据我对你的情况的理解,当你回应$ image_meta时(在我认为循环之后),你可以做两个中的一个:

echo rtrim($image_meta,',');

echo substr($image_meta,0,-1);

答案 1 :(得分:1)

看看内爆:

http://php.net/manual/en/function.implode.php

只是为了澄清,我猜你在做类似的事情:

$image_meta = '';
foreach($blahs as $blah){
   $image_meta .= "{\"id\":\"".$img_id."\",\"client\":\"".$img_desc."\",\"desc\":\"Test\"},";
}

这样的事情应该有效:

$image_meta_arr = array();
foreach($blahs as $blah){
   array_push($image_meta, "{\"id\":\"".$img_id."\",\"client\":\"".$img_desc."\",\"desc\":\"Test\"}";
}

$image_meta = implode(',', $image_meta_arr);

答案 2 :(得分:1)

你可以这样做:

$ar_image_meta = array();

for/foreach() // your loop
{
  $ar_image_meta[] = '{"id":"'.$img_id.'","client":"'.$img_desc.'","desc":"Test"}';
}

$image_meta = implode(", ", $ar_image_meta);

如果您的目标是将PHP变量“转换”为Javascript,请查看json_encode()