循环后的逗号

时间:2013-05-19 23:01:14

标签: php

我想为除最后一个用户名之外的每个用户名添加逗号。 例如:User1,User2,User3 我该怎么做呢?这是我的代码:

$user_online_sql = $db->query("SELECT DISTINCT account_id FROM online WHERE account_id != '-1';");
$users = '';
while ($user_online_row = mysql_fetch_array($user_online_sql)) {
$users .= $user->name($user_online_row['account_id']) . ' ';
}

我尝试了implode函数,但它只输出了一个空白结果,这里是带有implode函数的代码:

 $user_online_sql = $db->query("SELECT DISTINCT account_id FROM online WHERE account_id != '-1';");
$users = '';
while ($user_online_row = mysql_fetch_array($user_online_sql)) {
$users .= implode(', ',$user->name($user_online_row['account_id'])) . ' ';
} 

2 个答案:

答案 0 :(得分:5)

你使用implode是正确的,但是你错了。

$users = []; // or array() in PHP 5.3 and older
while($user_online_row = mysql_fetch_assoc($user_online_sql)) {
    $users[] = $user->name($user_online_row['account_id']);
}
$users = implode(", ",$users);
echo $users;

答案 1 :(得分:2)

只需在每个用户后添加逗号,然后删除尾随逗号。

$user_online_sql = $db->query("SELECT DISTINCT account_id FROM online WHERE account_id != '-1';");
$users = '';
while ($user_online_row = mysql_fetch_array($user_online_sql)) {
$users .= $user->name($user_online_row['account_id']).',';
}
rtrim ($users, ",");