使用函数进入函数的未定义变量

时间:2016-08-16 10:03:20

标签: php

使用此代码时遇到问题,以获得适当的结果。

我的代码:

function check_txt($url, $content) {
    global $content;
    $result = get_file_contents($url);

    $arr = array_filter($result, function($ar) {
       return ($ar['txt'] == $content);
    });

    return $arr[0];
}

执行代码时出现此错误:

Notice: Undefined variable: content in myfile.php

我的问题是如何将内容变量传递给function($ar)?已经尝试了function($ar, $content)global $content;,就像我发布的代码一样。

2 个答案:

答案 0 :(得分:0)

无论哪种 A)如果您之前在全局范围内定义了$ content,请使用您拥有的全局并删除$ content参数。 要么, B)删除全局声明并使用$ content参数传递内容。

PS:正如其他人所指出的那样,你需要在anon函数上使用use()......但是也要传递param或者去全局,不要两者兼顾。

答案 1 :(得分:0)

array_filter()函数使用回调函数过滤数组的值。

此函数将输入数组的每个值传递给回调函数。如果回调函数返回true,则输入中的当前值将返回到结果数组中。数组键被保留。

http://www.w3schools.com/php/func_array_filter.asp

希望这会有所帮助:)