2016-04-30 111 views
0

我试图在PHP中运行一个foreach循环来浏览csv文件的每一行,我实际上从另一个帖子获取了此循环的设置(但它也是一样的在php.net上)。Foreach循环不能在PHP中工作

我的代码是:

$csvFile = file('MajorCourses.csv') 

foreach($csvFile as &$line) 
{ 
    $data[] = str_getcsv($line) 
} 

,而PHP的文件在同一目录中我的PHP文件,但我得到这个错误:

“解析错误:语法错误,意外‘的foreach’ (T_FOREACH)在C:\ wamp2 \ www \ advisingApp.php 23行“

我不确定为什么它是”意外的“,我是新来的PHP。但循环是在PHP标签。

+1

你在'file()后面缺少';';' – Kisaragi

回答

1

循环是“意外的”,因为您在语句末尾缺少分号。

这条线:

$csvFile = file('MajorCourses.csv') 

应该是:

$csvFile = file('MajorCourses.csv'); 

和:

$data[] = str_getcsv($line) 

应该是:

$data[] = str_getcsv($line); 
+0

谢谢大家!我不能相信我是那个愚蠢的哈哈 – user3505195

1

而且错字这里:

$csvFile = file('MajorCourses.csv') 

应该是:

$csvFile = file('MajorCourses.csv'); 

分号失踪。

这在错误消息中由“意外的'foreach'”表示。如果您遇到意外错误,您应该在意外情况前检查代码。

+0

@Dave啊。错过了第二个,太慢了;) – BitAccesser

2

您在代码末尾缺少一个分号。

改为使用它。

$csvFile = file('MajorCourses.csv'); 

foreach($csvFile as &$line) 
{ 
    $data[] = str_getcsv($line); 
}