使用PHP中的回车符组织文本文件,生成HTML

使用PHP中的回车符组织文本文件,生成HTML,php,html-generation,Php,Html Generation,我希望能够接受一个PHP文件 **example_file.txt** United States Canada ----------------------- Albania Algeria American Samoa Andorra Angola 并将这些单独的换行符包装在我传递给它的HTML元素中 例如: magicHtmlGenerator(example_file.txt, '<li>') // spits out <li>United States<

我希望能够接受一个PHP文件

**example_file.txt**
United States
Canada
-----------------------
Albania
Algeria
American Samoa
Andorra
Angola
并将这些单独的换行符包装在我传递给它的HTML元素中

例如:

magicHtmlGenerator(example_file.txt, '<li>') 
// spits out <li>United States</li><li>Canada</li> etc
magicHtmlGenerator(示例_file.txt,
  • ) //吐出美国
  • 加拿大

  • 创建一个函数,该函数接受这两个参数,加载行(可以通过该函数轻松完成),然后在这些行上进行迭代,将它们附加到一个字符串中,并填充所需的HTML标记。

    创建一个函数,该函数接受这两个参数,加载行(可以通过该函数轻松完成),然后对它们进行迭代,将它们附加到一个字符串中,并填充所需的HTML标记。

    加载该文件,然后使用正则表达式进行替换

    preg_replace  ( \\r+([^\r]+)\r+\g  , \<li>$1</li>  ,  $str );
    
    preg\u replace(\\r+([^\r]+)\r++\g,\
  • $1
  • ,$str);

    加载文件,然后使用正则表达式进行替换

    preg_replace  ( \\r+([^\r]+)\r+\g  , \<li>$1</li>  ,  $str );
    
    preg\u replace(\\r+([^\r]+)\r++\g,\
  • $1
  • ,$str);

    函数magicHtmlGenerator($filename,$wrapper){
    $x=文件获取内容($filename);
    返回“”。str_replace(“\n”,“”,$x)。“”;
    }
    $html=magicHtmlGenerator('example_file.txt','li');
    echo$html;
    
    函数magicHtmlGenerator($filename,$wrapper){
    $x=文件获取内容($filename);
    返回“”。str_replace(“\n”,“”,$x)。“”;
    }
    $html=magicHtmlGenerator('example_file.txt','li');
    echo$html;
    
    还有另一种方法:

    $sxml = new SimpleXMLElement('<ul></ul>', LIBXML_NOXMLDECL);
    $data = file('example_file.txt', FILE_IGNORE_NEW_LINES);
    foreach ($data as $line) {
        if (ctype_alpha($line)) {   // Or whatever test you need
            $sxml->addChild('li', $line);
        }
    }
    echo $sxml->asXML();
    
    $sxml=新的simplexmlement(“
      ”,LIBXML\u NOXMLDECL); $data=file('example\u file.txt',file\u IGNORE\u NEW\u行); foreach($行数据){ 如果(ctype_alpha($line)){//或任何您需要的测试 $sxml->addChild('li',$line); } } echo$sxml->asXML();
      输出:

      • 加拿大
      • 阿尔巴尼亚
      • 阿尔及利亚
      • 安道尔
      • 安哥拉
        • 还有另一种方法:

          $sxml = new SimpleXMLElement('<ul></ul>', LIBXML_NOXMLDECL);
          $data = file('example_file.txt', FILE_IGNORE_NEW_LINES);
          foreach ($data as $line) {
              if (ctype_alpha($line)) {   // Or whatever test you need
                  $sxml->addChild('li', $line);
              }
          }
          echo $sxml->asXML();
          
          $sxml=新的simplexmlement(“
            ”,LIBXML\u NOXMLDECL); $data=file('example\u file.txt',file\u IGNORE\u NEW\u行); foreach($行数据){ 如果(ctype_alpha($line)){//或任何您需要的测试 $sxml->addChild('li',$line); } } echo$sxml->asXML();
            输出:

            • 加拿大
            • 阿尔巴尼亚
            • 阿尔及利亚
            • 安道尔
            • 安哥拉

              • 无意冒犯,但听起来你好像在试图重新创造。除非您发现这是一个有趣的编码示例,否则为什么不使用emany模板系统呢?(提示:Smarty)这会让你有时间去做“更重要的事情”。

                无意冒犯,但听起来你好像在试图重新创造。除非您发现这是一个有趣的编码示例,否则为什么不使用emany模板系统呢?(提示:Smarty)这会让你有时间去做“更重要的事情”