mirror of
https://github.com/php/php-src.git
synced 2026-03-24 16:22:37 +01:00
@- Updated array_walk() to be able to accept array($obj, 'method')
@ syntax for the walk function. (Andrei)
This commit is contained in:
@@ -1015,11 +1015,18 @@ PHP_FUNCTION(array_walk) {
|
||||
}
|
||||
target_hash = HASH_OF(*array);
|
||||
if (!target_hash) {
|
||||
php_error(E_WARNING, "Wrong datatype in array_walk() call");
|
||||
php_error(E_WARNING, "Wrong datatype in %s() call",
|
||||
get_active_function_name());
|
||||
BG(array_walk_func_name) = old_walk_func_name;
|
||||
RETURN_FALSE;
|
||||
}
|
||||
if (Z_TYPE_PP(BG(array_walk_func_name)) != IS_ARRAY &&
|
||||
Z_TYPE_PP(BG(array_walk_func_name)) != IS_STRING) {
|
||||
php_error(E_WARNING, "Wrong syntax for function name in %s() call",
|
||||
get_active_function_name());
|
||||
BG(array_walk_func_name) = old_walk_func_name;
|
||||
RETURN_FALSE;
|
||||
}
|
||||
convert_to_string_ex(BG(array_walk_func_name));
|
||||
php_array_walk(target_hash, userdata);
|
||||
BG(array_walk_func_name) = old_walk_func_name;
|
||||
RETURN_TRUE;
|
||||
|
||||
Reference in New Issue
Block a user