【问题标题】:PHP code to take a list of items that are separated by commas from database and put them in a list formPHP代码从数据库中获取以逗号分隔的项目列表并将它们放在列表形式中
【发布时间】:2012-03-16 11:20:21
【问题描述】:

不确定这是否是数据库设计的最佳方式,但我的数据库中有一个 TEXT 类型,其中有一堆用逗号分隔的项目(item1、item2、item3、item4)。但是,我希望它输出为:

  • 项目1
  • 项目2
  • 项目3
  • 项目4

那么有没有人有代码可以做到这一点,还是我应该继续规范化我的表格?

【问题讨论】:

  • 如果只有四个项目并且它只是一个用于检索的静态数据,那么您没有在此列上进行任何搜索。通过用逗号分隔它来存储在数据库中是有意义的。如果您正在对该项目进行任何搜索,请优化表格。
  • 所以不是gimme-teh-codez.com

标签: php html html-lists


【解决方案1】:

您可以使用explode() 将该字符串转换为数组,然后循环输出数据

如果您需要在数据库中搜索该字段的任何内容,那么规范化 db 表是有意义的。

【讨论】:

  • 好的,感谢explode功能(之前没用过)。看来我需要对其进行规范化,因为我要搜索。
【解决方案2】:

你可以从explode()开始

http://de2.php.net/manual/en/function.explode.php

你尝试过什么?

【讨论】:

    【解决方案3】:

    试试这个:

    $items = explode(",", $string_from_db);
    echo '<ul>';
    foreach($items as $item) {
        echo '<li>' . trim($item) . '</li>';
    }
    echo '</ul>';
    

    explode() 获取字符串并根据指定的字符将其分成一个数组。
    然后循环遍历数组并输出每个列表项。
    trim() 将删除两端的任何空格。

    【讨论】:

    • 我认为这是正确的答案。至于规范化你的表去......这取决于你对这些数据的使用,并且根本与 PHP 无关。你真的需要告诉我们更多关于你的数据库设计的信息,是否只有 4 个列表项,或者它是否是可变的等等。
    猜你喜欢
    • 2019-08-06
    • 1970-01-01
    • 2011-11-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-23
    • 1970-01-01
    相关资源
    最近更新 更多