Допустим у меня есть переменная со строкой
'min'. Строка совпадает с именем стандартной функции. Как мне узнать что данные в переменной — именно строка, а не функция?
gettype() вернет
string (в том числе и для лямбда функций, что меня не устраивает), а
is_callable() вернет
true (хотя я ожидал бы увидеть
false). Помогите пожалуйста.
—
// v::d это обертка вардампа
$var = create_function('','return false;'); // лямбда функция
v::d(is_callable($var)); // true
v::d(is_string($var)); // true
v::d(is_object($var)); // false
v::d(function_exists($var)); // true
$var2 = 'count'; // по идее строка
v::d(is_callable($var2)); // true
v::d(is_string($var2)); // true
v::d(is_object($var2)); // false
v::d(function_exists($var2)); // true