Как переписать пример без использования create_function?

При взгляде на PHP create_function это говорит:

Если вы используете PHP 5.3.0 или новее нативный анонимная функция следует использовать вместо

Я хочу воссоздать ту же функциональность create_function но используя anonymous function, Я не вижу, как, или я правильно к нему подхожу.

По сути, как мне изменить следующее, чтобы я больше не использовал create_function но все еще можете ввести формулу свободной формы, которую я хочу оценивать с моими собственными параметрами?

$newfunc = create_function(
'$a,$b',
'return "ln($a) + ln($b) = " . log($a * $b);'
);
echo $newfunc(2, M_E) . "\n";

Пример взят из PHP create_function стр.

Замечания:

Это похоже на приведенный выше пример, который я могу передать в произвольный строка, и пусть она будет скомпилирована для меня. Можно ли как-то сделать это без использования create_function?

2

Решение

$newfunc = function($a, $b) {
return "ln($a) + ln($b) = " . log($a * $b);
}

echo $newfunc(2, M_E) . "\n";
4

Другие решения

Других решений пока нет …