如何使用PHP将MySQL条目拆分为不同的行

时间:2015-04-19 08:13:37

标签: php mysql

使用简单的HTML textarea我在MySQL中添加了一些记录。添加我按下的条目时输入以分隔行。现在我想在子弹中使用PHP选择/显示这些记录。我希望每一行都显示为子弹。

例如(我添加的内容)

Name

Age

Gender

我想要什么

  • 姓名
  • 年龄
  • 性别

我正在使用以下PHP脚本

$result = mysql_query("SELECT * FROM students");
echo "<ul>";
while($row = mysql_fetch_array($result))
  {
echo '<li'.$row["details"].'</li>';
  }
echo "</ul>";

2 个答案:

答案 0 :(得分:0)

虽然我不确定这是一个好习惯(如果用户忘记使用换行符/输入怎么办?),您可以使用explode()功能。

From the manual

  

返回一个字符串数组,每个字符串都是字符串的子字符串   通过将其分割成由字符串分隔符形成的边界而形成。

$listItems = explode("\n\n", $row['details']);
echo '<ul'>;
foreach($listItems as $item){
 echo '<li>'. $item .'</li>';
}
echo '</ul>';

请注意:您使用的是不推荐使用的mysql_。考虑使用PDO

答案 1 :(得分:0)

这应该可以解决问题:

//assuming $result variable holds the db value from the textarea
$lines = explode("\n", $result);
echo "<ul>;
array_walk($lines, function($line) {
    $sanitizedLine = htmlentities($line);
    echo "<li>$sanitizedLine</li>";
});
echo "</ul>