Как / делали в PHP функции «высокого порядка» (обратного вызова) до версии 5.3? - PullRequest
1 голос
/ 23 августа 2011

Например, функция array_map.Вы передаете ему строку, которая является именем функции.Предположительно, он напрямую не оценивает строку, поскольку вы получаете конкретную ошибку:

PHP Warning:  array_map() expects parameter 1 to be a valid callback, function 'dfdgdfg' not found or invalid function name

, которая отличается от ошибки «Вызов неопределенной функции», которую вы получаете, если вызываете неопределенную функцию.

Итак, он просматривает вашу строку в глобальной таблице символов, проверяет, существует ли она, а если нет, генерирует указанное выше исключение?

Это все еще не объясняет, как она вызывает функцию, хотя,Выполняет ли он проверку строки после проверки, является ли она определенной функцией?

...