显示每个新 echo $row 时的新行 ['username']

New row when displaying every new echo $row ['username']

我想是否可以在新的一行中显示用户名,而不是一个接一个地显示。

例如:

行政
用户1
用户2
行政
用户1
用户2

这是我的代码:

$con = mysql_connect('localhost','root','');
mysql_select_db('chatbox',$con);
$sql    = "SELECT `username` 
       FROM `users` 
       ORDER BY `username` ASC";

$result = mysql_query($sql);


if($result === FALSE) { 
die(mysql_error());
}

while($row = mysql_fetch_array($result))
{
echo $row['username']; //over here
}
?>

您应该使用以下内容作为 while 循环:

while($row = mysql_fetch_array($result))
{
    echo $row['username'], "<br/>", PHP_EOL;//over here
}

PHP_EOL 指定一个独立于平台的换行符。

Note: mysql function is deprecated since PHP 5.5, so you have to move to mysqli function.

如果你想使用foreach方法,那么它应该是这样的:

<?php
$row = mysql_fetch_array($result);
foreach($row as $key => $value) echo $row['username'].PHP_EOL;

使用其中之一

echo $row['username'] . "<br>" . "\n";

echo $row['username'] . "<br>" . PHP_EOL;

这将在屏幕上为每个 word/name.

生成干净的 HTML 和新行

旁注: \n 使用双引号很重要。如果不是并且使用单引号,例如 '\n' 将回显 n 这不是您想要的。因此,使用 "\n".


注意: \nPHP_EOL 只会在 HTML 源中生成新的 lines/carriage returns 和不在屏幕上,我认为这是最终目标。

此外,如果在写入文件时使用,会将它们放在单独的行上。

因此,您需要为您的目的添加<br>


脚注:

mysql_* 函数已弃用,将从未来的 PHP 版本中删除。