删除最后一个逗号或阻止它在所有MySQL / PHP上打印

时间:2012-03-21 00:58:45

标签: php mysql string comma csv

我正在打印一组置于MySQL数据库中的单词,我正在使用PHP检索它。我想将它作为逗号分隔列表呈现,但我需要它不打印或删除最后一个逗号。我怎么能这样做?

我确实尝试使用rtrim,但我可能做得不对。 这是我今天的代码:

<?php

$query0  = "SELECT LCASE(ord) FROM `keywords` ORDER BY RAND()";
$result0 = mysql_query($query0);

while($row0 = mysql_fetch_array($result0, MYSQL_ASSOC))
{
$keyword = $row0['LCASE(ord)'];

echo "$keyword, ";
?>

我确实尝试使用rtrim,我的尝试是这样的(我可能诚实地说我在这头脑中;)

$keyword = $row0['LCASE(ord)'];
$keywordc = "$keyword, ";
$keyword- = rtrim($keywordc, ', ');
echo "$keyword-, ";

正如您可能想象的那样,这打印得不多(但至少它没有给我留下空白页......)

3 个答案:

答案 0 :(得分:4)

我愿意:

$keywords = array();
while($row0 = mysql_fetch_array($result0, MYSQL_ASSOC))
{
   $keywords[] = $row0['LCASE(ord)'];
}

echo implode(',', $keywords);

答案 1 :(得分:2)

我通常首先将结果放在数组中

$some_array = array();
while($row0 = mysql_fetch_array($result0, MYSQL_ASSOC)) {
   $some_array[] = $row0['LCASE(ord)'];
}

然后简单地说:

echo "My List: " . implode(', ', $some_array);
// Output looks something like:
My List: ord1, ord2, ord3, ord4

答案 2 :(得分:0)

substr($string, 0, -1);

删除最后一个字符。