使用PHP将SQL数据转换为字符串
我有一列来自SQL数据库的数据,我正在通过PHP调用该数据库。我希望将这些结果转换为连续字符串。因此,这是一种将结果(由列中的一系列字符串组成)转换为字符串的情况 我该怎么办 目前,当我使用使用PHP将SQL数据转换为字符串,php,sql,string,Php,Sql,String,我有一列来自SQL数据库的数据,我正在通过PHP调用该数据库。我希望将这些结果转换为连续字符串。因此,这是一种将结果(由列中的一系列字符串组成)转换为字符串的情况 我该怎么办 目前,当我使用 while($row = mysqli_fetch_array($result)) { echo $row['title']; echo "<br>"; } while($row=mysqli\u fetch\u数组($result)) { echo$row['t
while($row = mysqli_fetch_array($result))
{
echo $row['title'];
echo "<br>";
}
while($row=mysqli\u fetch\u数组($result))
{
echo$row['title'];
回声“
”;
}
它返回每个项目,但我希望将这些项目放入字符串中
谢谢您可以使用-功能:
$titles = array();
while($row = mysqli_fetch_array($result))
{
$titles[] = $row['title'];
}
$titlestring = implode(",", $titles);
另一个选项是自己连接字符串,如下所示:
$titlestring = "";
while($row = mysqli_fetch_array($result))
{
$titles .= $row['title'] . ", ";
}
$titlestring = substr($titlestring, 0, -2);
在我看来,第一种选择更好 MySQL可以更好地处理这个问题
while($row = mysqli_fetch_array($result))
{
$myString .= $row['title'] . " ";
}
在标题列上指定一个索引,然后运行如下查询
SET SESSION group_concat_max_len = @@max_allowed_packet;
SELECT GROUP_CONCAT(title) FROM database.table GROUP BY title ASC
返回的数据示例
title1,title2,title3在PHP中,您不会使用
+
@PatrickKostjens进行字符串连接:我编辑了我的答案,但+的效果和我记得的一样好。不,它不会。在PHP shell中,您可以尝试echo“a”+“b”代码>。它将导致0
<代码>回显“a”。“b”代码>将导致ab
。这行末尾的+
在那里做什么?第二个选项非常令人不快,我看到太多的程序员在做这件事。第一个是唯一有意义的。