我的下载脚本有问题,一切正常,它列出了文件夹中的所有项目,我可以下载它们,但我仍然收到错误消息。我试图重新安排“”和“”,但后来我又遇到了一些奇怪的错误。
这是我的错误:
注意:未定义的变量:第5行的D:\ xampp \ htdocs \ download_test \ index.php中的列表
这是我的代码
<?php
if ($handle = opendir('downloads/')) {
while (false !== ($file = readdir($handle))) {
if ($file != "." && $file != "..") {
$thelist .= '<li><a href="http://localhost/download_test/download.php?f=downloads/'.$file.'">'.$file.'</a></li>';
}
}
closedir($handle);
}
?>
<h1>List of files:</h1>
<ul><?php echo $thelist; ?></ul>
帮助真的很感激!谢谢!
答案 0 :(得分:3)
$thelist .= 'blah';
是
的简写$thelist = $thelist . 'blah';
即使你试图在行的开头(在=之前)定义$ thelist,这取决于首先执行的行的后半部分(= $ thelist。'blah') - 因为你需要在将值存储在变量中之前计算出值。但是你还没有说过$ thelist是什么,PHP认为它是一个空变量。
正如bwoebi所提到的,你需要定义$ thelist来解决这个问题。将其设置为空值,即
$thelist = '';
在你的外部if子句之前的任何地方应该解决这个问题。
答案 1 :(得分:2)
您必须首先初始化变量:
$thelist = "";
在你的if子句之前。
首次尝试扩展尚未存在的字符串时会发生未定义的错误。
答案 2 :(得分:0)
它只是一个通知,而不是错误。它说,在一个好的代码中,你应该在使用之前先声明一个变量。你的代码可以正常工作。