循环遍历列表时出现PHP错误

时间:2015-03-23 02:04:24

标签: php

我试图遍历存储在配置文件中的字符串列表。

bar.txt(配置文件):

arr = array("one", "two", "three");

bar.php(主文件):

<?php
$filename = "/home/test/bar.txt";
$handle = fopen($filename, "r");
$contents = fread($handle, filesize($filename));

echo $contents;

foreach ($arr as $value) {

echo $value;

}

fclose($handle);

?>

输出:Warning: Invalid argument supplied for foreach() in /home/test/bar.php on line 8

3 个答案:

答案 0 :(得分:2)

我认为更简单的方法就是这样:

首先,在文件中更正arr$arr,然后在其上添加标签。如果需要,可以将扩展名更改为bar.php(但如果需要,可以保留txt扩展名。)。

然后,尝试使用include而不是fread:

<?php
include "/home/test/bar.php";

foreach ($arr as $value) {

    echo $value;

}

答案 1 :(得分:1)

在bar.txt arr中应为$arr

答案 2 :(得分:1)

你需要将你的数组包装在php标签中,并使用require_once(推荐)来包含它:

  

bar.php

<?php $arr = array("one", "two", "three"); ?>
  

Mainscript.php

<?php
    require_once( "bar.php" );
    foreach ($arr as $value) 
    {
    echo $value;
    echo '<br />';

    }
?>