<?php
$wordFrequencyArray = array();
function countWords($file) use($wordFrequencyArray) { //error here
/* get content of $filename in $content */
$content = strtolower(file_get_contents($filename));
以下是我正在使用的代码片段。
我在第3行遇到错误。我有所有匹配的括号。可能有什么问题?
答案 0 :(得分:8)
应该是:
$countWords = function($file) use($wordFrequencyArray) {
//...
};
答案 1 :(得分:8)
只有anonymous functions可能声明了use
语句,因此会显示错误消息,警告您需要使用左括号而不是use
语句。
要环绕没有use
语句,您可以添加更多参数并将其传递给函数,或者在某些情况下将变量称为global。
答案 2 :(得分:0)
不是解决方案,而是加入讨论。
我在名称空间声明和使用命令方面苦苦挣扎。最后,我发现问题只是我试图在我将要使用该项目的函数中进行声明。这导致我的脚本失败并出现上述错误消息。将声明移到php脚本的开头之后
答案 3 :(得分:-2)
试
<?php
$wordFrequencyArray = array();
function countWords($file) {
global $wordFrequencyArray;
/* get content of $filename in $content */
$content = strtolower(file_get_contents($filename));
}
答案 4 :(得分:-2)
使它像:
$wordFrequencyArray = array();
function countWords($file,$wordFrequencyArray) {
/* get content of $filename in $content */
$content = strtolower(file_get_contents($filename));
}