У меня есть класс, который использует функцию анонимной функции 5.3 ( https://github.com/JeffreyWay/Easy-WordPress-Custom-Post-Types/blob/master/jw_custom_posts.php ), но есть проблема, на сервере I не может обновиться до 5.3. Есть ли какое-либо проворное решение, чтобы избавиться от анонимных функций или мне нужно переписать весь класс?
Я работаю над сайтом с дизайнером типа. Он не хочет, чтобы его шрифты перепродавали шрифтов и хотели, чтобы люди купили свой собственный шрифт на своем сайте. Он хотел бы, чтобы веб-приложение отображало живой шрифт, а также позволяло людям вводить поле ввода, чтобы генерировать собственные слова с помощью шрифта. Так же, как и myfonts и другие […]
Просто интересно, почему что-то вроде этого не работает: public function address($name){ if(!isset($this->addresses[$name])){ $address = new stdClass(); $address->city = function($class = '', $style = ''){ return $class; }; $this->addresses[$name] = $address; } return $this->addresses[$name]; } Вызов его как echo $class->address('name')->city('Class') должен просто echo Class , но я получаю Fatal error: Call to undefined method stdClass::city() Я […]
Есть ли способ остановить array_walk внутри анонимной функции? Вот пример кода (который работает), чтобы показать, что я имею в виду, который проверяет, имеет ли массив только числовые значения. $valid = true; array_walk($parent, function ($value) use (&$valid) { if (!is_numeric($value)) { $valid = false; } }); return $valid ? 'Valid' : 'Invalid'; Если у меня есть […]
Моя цель – поставить сложную логику в оператор if (). Предположим, у меня есть массив значений, и я собираюсь выполнить немного кода, если все в моем массиве отличное от нуля. Обычно я могу сказать: $valid = true , foreach my array и set $valid = false когда найден нуль. Тогда я запустил бы свой код, […]
Возможный дубликат: Закрытие вызова, присвоенное объекту напрямую Почему это невозможно в PHP? Я хочу, чтобы создать функцию «на лету» для определенного объекта. $a = 'a'; $tokenMapper->tokenJoinHistories = function($a) { echo $a; }; $tokenMapper->tokenJoinHistories($a);
Я пытаюсь использовать array_walk с анонимной функцией, но всегда получаю ошибку // Parse error: syntax error, unexpected T_FUNCTION in … on line X if(!empty($myArray)) { array_walk($myArray, function(&$value, $key){ // Line X $value = '"'.$value.'"'; // Add quotes }); } Правильный синтаксис файла. Есть предположения?
Я был очень рад прочитать об анонимных функциях в php, которые позволяют вам объявлять переменную, которая работает легче, чем вы могли бы сделать с create_function . Теперь мне интересно, есть ли у меня функция, которая передается переменной, как я могу проверить ее, чтобы определить, является ли она функцией? Функция is_function () пока отсутствует, и когда […]
У меня есть анонимные функции, которые мне теперь нужно обновить, чтобы быть совместимыми с PHP 5.2. Функция (ниже) принимает текст и верхнюю часть первой буквы каждого предложения. function clean_text($input) { $output = $input; $output = preg_replace_callback('/([.!?])\s*(\w)/', function ($matches) { return strtoupper($matches[1] . ' ' . $matches[2]); }, ucfirst(strtolower($input))); return $output; } Я попытался вытащить функцию, […]
В руководстве есть функция create_function и вы можете передать результат из этой функции в array_map , я думал, что это единственный способ иметь что-то вроде анонимных функций и закрытий, но потом я обнаружил, что могу просто поместить функцию, как в javascript array_map(function($a) { return $a+1; }, array(1, 2, 3, 4, 5)); В какой версии php […]