使用PHP循环浏览列表并设置不同的格式

使用PHP循环浏览列表并设置不同的格式,php,Php,PHP从HTML格式的列表表中提取数据: <ul> <li>first line of text</li> <li>second line of text</li> <li>third line of text</li> <li>forth line of text</li> <li>fifth line of text</li&g

PHP从HTML格式的列表表中提取数据:

<ul>
    <li>first line of text</li>
    <li>second line of text</li>
    <li>third line of text</li>
    <li>forth line of text</li>
    <li>fifth line of text</li>
    <li>sixth line of text</li>
    <li>seventh line of text</li>
</ul>
  • 第一行文字
  • 第二行文字
  • 第三行文字
  • 正文第四行
  • 第五行文字
  • 第六行文字
  • 第七行文字
其输出方式为:

<?php echo $lines; ?>

但是,我想使用foreach,以便在可能的情况下以以下格式获取该列表和输出

<span>first line of text</span>
<span>second line of text</span>
<span>third line of text</span>
<span>forth line of text</span>
<span>fifth line of text</span>
<span>sixth line of text</span>
<span>seventh line of text</span>
文本的第一行
第二行文字
第三行文字
正文第四行
第五行文字
第六行文字
第七行文字
我想去掉ul和li,并用span标签替换li,这可能吗?

快速且肮脏:

$lines = str_replace("<ul>", "", $lines);
$lines = str_replace("</ul>", "", $lines);
$lines = str_replace("<li>", "<span>", $lines);
$lines = str_replace("</li>", "</span>", $lines);
$lines=str_替换(“
    ”,“,$lines”); $lines=str_替换(“
”、“”、$lines); $lines=str_替换(“
  • ”、“”、$lines); $lines=str_替换(“
  • ”、“”、$lines);
    或更短:

    $array = array("<ul>", "</ul>", "<li>", "</li>");
    $replace = array("", "", "<span>", "</span>");
    $lines = str_replace($array, $replace, $lines);
    
    $array=array(“
      ”、“
    ”、“
  • ”、“
  • ”); $replace=数组(“,”,“,”); $lines=str_replace($array,$replace,$lines);
    又快又脏:

    $lines = str_replace("<ul>", "", $lines);
    $lines = str_replace("</ul>", "", $lines);
    $lines = str_replace("<li>", "<span>", $lines);
    $lines = str_replace("</li>", "</span>", $lines);
    
    $lines=str_替换(“
      ”,“,$lines”); $lines=str_替换(“
    ”、“”、$lines); $lines=str_替换(“
  • ”、“”、$lines); $lines=str_替换(“
  • ”、“”、$lines);
    或更短:

    $array = array("<ul>", "</ul>", "<li>", "</li>");
    $replace = array("", "", "<span>", "</span>");
    $lines = str_replace($array, $replace, $lines);
    
    $array=array(“
      ”、“
    ”、“
  • ”、“
  • ”); $replace=数组(“,”,“,”); $lines=str_replace($array,$replace,$lines);
    您需要将格式仅li更改为span?首先查找创建
    $lines
    的代码块,它使用concrete5,因此我认为核心控制器基于db.xml文件创建var,但是的,只想将输出的li更改为spans,并删除UL。列表的标记实际上在数据库中,因此我想需要从输出更改。您需要将格式仅更改为li到span?首先查找创建
    $lines
    的代码块,它使用concrete5,因此我认为核心控制器根据db.xml文件创建var,但我只想将输出的li更改为跨越并移除UL。列表的标记实际上在数据库中,所以我想需要从输出更改。谢谢,伙计,我会快速尝试,让你知道只是集成,得到一个mysql错误,所以只是排序。必须完成一个内联编辑器表单,但它已经全部完成,只是没有保存以便排序,然后可以确认:)我不明白你想说什么:D那么这是有效的还是需要更多的帮助?因此,请描述您的问题。我在保存表单时遇到mysql错误,因此无法将其保存到数据库。请从编辑器中查看ul列表,然后查看输出-您能发现它在做什么吗?我不明白为什么会出现错误:接受,我肯定会工作,但如果有问题,我会给你一个叫喊-谢谢你的帮助,伙计。谢谢,伙计,我会很快让你知道只是集成,得到一个mysql错误回来,所以只是排序。必须完成一个内联编辑器表单,但它已经全部完成,只是没有保存以便排序,然后可以确认:)我不明白你想说什么:D那么这是有效的还是需要更多的帮助?因此,请描述您的问题。我在保存表单时遇到mysql错误,因此无法将其保存到数据库。请从编辑器中查看ul列表,然后查看输出-您能发现它在做什么吗?我不明白为什么会有这样的错误:接受,我肯定会工作,但如果有问题,我会给你一个大喊-谢谢你所有的帮助,伙计。