使用php从文本文件中生成无序列表

时间:2014-05-16 12:22:54

标签: php html list text-parsing

我是php的新手,我正在尝试从文本文件创建无序列表。我在文本文件“oscars.txt”中读取,然后创建无序列表。我相信我的逻辑是正确的,但是当我托管页面时,我无法得到任何东西。它说它无法加载我的页面。这让我相信我的语法中的某些内容是不正确的。有没有人有任何想法我在这里做错了什么以及如何解决它?谢谢你的帮助。以下是我到目前为止所做的事情:

<html>
    <head>
    <title>Un-ordered list</title>
    </head>
    <body>
    <?php
        $file = fopen("oscars.txt", "r")
        $i=0;
        while(!feof($myfile)){
            $members[]= fgets($file);
        }
        fclose($file);
        $arrlength =count($members)
        $title = True;
        for($i=0;$i<($arrlength);$i++){
            if($title=True){
                echo "<h2"> . $members[$i] . "<h2><ul>";
                $title = False;
            }
            if(trim($members[$i])==''){
                echo "</ul><h2>" . $members[{$i+1] . "</h2><ul>";
                $i++;
            } else { 
                echo "<li>" . $members[$i] . "</li>" ;
            }
        }
    ?>
    </body>
</html>

1 个答案:

答案 0 :(得分:3)

代码有很多问题。

  1. $file = fopen("oscars.txt", "r")

  2. 中缺少分号
  3. 调用错误的文件while(!feof($myfile)){应该是$file

  4. $arrlength =count($members)

  5. 的另一个缺少的分号
  6. echo "<h2"> . $members[$i] . "<h2><ul>";

  7. 中的错误引用
  8. 另外,$members[{$i+1]

  9. 内的支撑

    返工:

    <html>
        <head>
        <title>Un-ordered list</title>
        </head>
        <body>
        <?php
            $file = fopen("oscars.txt", "r");
            $i=0;
            while(!feof($file)){
                $members[]= fgets($file);
            }
            fclose($file);
            $arrlength =count($members);
            $title = True;
            for($i=0;$i<($arrlength);$i++){
                if($title=True){
                    echo "<h2>" . $members[$i] . "<h2><ul>";
                    $title = False;
                }
                if(trim($members[$i])==''){
                    echo "</ul><h2>" . $members[$i+1] . "</h2><ul>";
    
    
                    $i++;
                } else { 
                    echo "<li>" . $members[$i] . "</li>" ;
                }
            }
        ?>
        </body>
    </html>
    

    在文件顶部添加/启用error reporting,这有助于在生产测试期间。

    error_reporting(E_ALL);
    ini_set('display_errors', 1);