在PHP / HTML中混合有序列表,链接和变量

时间:2010-08-04 15:50:29

标签: php html glob

我正在从Project Euler休息一下,学习一些PHP / HTML的踢腿和咯咯笑声,我找到了一页简单的练习。因此,在我的“网站上”,我希望有一个有序列表链接到每个练习的页面,但我决定以动态的方式进行,而不是像我一样练习对每个项目进行硬编码。不幸的是,应该包含列表的页面根本不会呈现!

假设我的系统上有文件名为“exawk#.php”,这段代码还有什么问题?对不起,如果它是草率或可怕的,它实际上是我的网络编程的第一天。

<html>
  <head>

    <title> Awaken's Exercises </title>

  </head>

  <body>

    <h1>This page contains "Awaken's Exercises" from
    <a href="http://forums.digitalpoint.com/showthread.php?t=642480">
    this page</a>.</h1>

    <ol>
    <?php
      $arex = glob("exawk*.php"); // $arex contains
                                //an array of matching files
      $numex = 0;
      $i = 0;
      foreach( $arex )
      {
        $numex++;
      }

      while( $numex >= 0 )
      {
        echo "<li><a href=" .$arex[$i].
             ">Problem #" .$numex. ".</a></li>";
        $numex--;
        $i++;
      }

    ?>
    </ol>

  </body>

</html>

1 个答案:

答案 0 :(得分:1)

在php.ini中启用display_errorsforeach( $arex )语法错误(缺少.. as $varname)。

从命令行,您可以使用php -l /path/to/your/file.php进行检查。

此外,此示例:

  //an array of matching files
  $numex = 0;
  foreach( $arex as $youdontdoanythingwiththis)
  {
    $numex++;
  }

可能是:

 $numex = count($arex);

改善整个事情:

while( $numex >= 0 )
{ ...etc

可能是:

$num = 1;
foreach($arex as $file){
    echo '<li><a href="'.$file.'">Problem #'.$num.'</a></li>';
    $num++;
}