私はちょっとした問題を抱えています。 私は2つの匿名関数を持ち、1つは匿名関数を呼び出します。 機能$fCompleteDate
が機能$fFindAndCreateDate
致命的なエラー:関数名は、匿名関数の文字列でなければなりません。
内で呼び出されたときしかし、私はの致命的なエラーを取得:スクリプトの後半で呼ばれている
Function name must be a string.
機能$fFindAndCreateDate
を。
文字通り問題が何であるかわかりません。
$fCompleteDate = function($sDate)
{
$sDate = str_replace('/', '-', $sDate);
return str_repeat('01-', max(0, 2 - substr_count($sDate, '-'))) . $sDate;
};
$fFindAndCreateDate = function($aStruct)
{
$aDateStructNames = array('', 'Remark', 'Formatted', 'Extra');
foreach($aDateStructNames as $sDateStructName)
{
echo $fCompleteDate('2001');
echo 'a : '. $fCompleteDate($aStruct['startDate'.$sDateStructName]);
echo 'b : '. $fCompleteDate($aStruct['endDate'.$sDateStructName]);
}
};
これは、有効なPHPの関数ではありません。 JS関数とPHP関数はどちらも異なります。 –
私はこの種の宣言で何も匿名ではありませんが、PHPが匿名としてこのように呼び出された理由を知りません。 –