-1

すべてのオンライン ユーザーを表示するようにしましたが、最後のオンライン ユーザーの最後にあるコンマを削除するにはどうすればよいでしょうか。ここに私のコードがあります

                    while($online = mysql_fetch_array($usersonline)){
                    $username = $online['username'];

                    echo"<b> $username, </b>";
                    }
4

5 に答える 5

9

implode メソッドを使用することをお勧めします。

$usernames = [];

while($online = mysql_fetch_array($usersonline)){
  array_push($usernames, $online['username']);
}

echo implode(',', $usernames);
于 2012-09-16T21:03:36.217 に答える
2

インデックスを操作して、ではなく前に追加するだけです。

$index = 0;
while($online = mysql_fetch_array($usersonline)) {
  $username = $online['username'];
  echo"<b> ".($index>0?',':'')." {$username}</b>";
  $index++;
}
于 2012-09-16T21:04:11.300 に答える
1
    $u = 0;
    while($online = mysql_fetch_array($usersonline))
    {
        $u++;
        if($u == 1){
            $usernames = '<b>' . $online['username'] . '</b>';
        }else{
            $usernames .= '<b>, ' . $online['username'] . '</b>';
        }
    }

編集:内破はおそらくもっといいでしょう。

于 2012-09-16T21:04:17.650 に答える
0
$join = '';
while($online = mysql_fetch_array($usersonline))
{
    $username = $online['username'];
    echo"<b> $join . $username </b>";
    $join = ',';
}

または

$out = '';
while($online = mysql_fetch_array($usersonline))
{
    $username = $online['username'];
    $out .="<b> $username </b>,";
}
$out = rtrim($out,",");
echo $out;

または「tehlulz」が提案したように

$usernames = [];

while($online = mysql_fetch_array($usersonline)){
  array_push($usernames, $online['username']);
}

echo implode(',', $usernames);
于 2012-09-16T21:13:10.337 に答える
0

This probably isn't the most elegant way, but this should work:

$users="<b>";
while($online = mysql_fetch_array($usersonline))
{
    $username = $online['username'];
    $users.="$username,";
}
rtrim($users,',');
$users.="</b>";
echo $users;
于 2012-09-16T21:04:43.640 に答える