3

ここで何が問題なのかわかりません。ここに私のtest.phpファイルがあります:

<?php
error_reporting(E_ALL);
echo phpversion();
$arr = array ();

$attrs = array_filter((array)$arr, function($v) {
    return ($v || $v === 0 || $v === '0');
}); 

このスクリプトの出力は次のとおりです。

5.3.3 警告: array_filter() は、パラメーター 2 が有効なコールバックであることを期待しています。8 行目の /path/test.php に配列または文字列が指定されていません

それはどうしてですか?PHP 5.3はラムダをサポートしていると思いました。

4

1 に答える 1

3

これは、ラムダを使用するオペコードのキャッシュに問題があったeAcceleratorのバグに関連していました。eAcceleratorの最新バージョンに更新され、修正されました。

于 2012-06-29T15:49:04.143 に答える