В PHP 5.3 появилась поддержка так называемых анонимных функций или, говоря другими словами, возможности создавать функции без имени. Официальное руководство приводит такой пример: PHP: <?php $greet = function($name) { printf("Hello %s\r\n", $name); }; $greet('World'); $greet('PHP'); ?> Анонимные функции (или "Лямбда" см. Лямбда-исчисление) реализуют концепцию функций, являющихся значением (в примере выше, анонимная функция является значением $greet). В англоязычной статье Функционал PHP 5.3 - что такое анонимные функции и замыкания? также приводится пример связанных с анонимными функциями замыканий - функций, определённых внутри других функций и имеющих доступ к их локальным переменным (см. Замыкания). Пара слов о замыкании: Замыкание (англ. closure) в программировании — процедура, которая ссылается на свободные переменные в своём лексическом контексте. PHP имеет встроенную поддержку замыканий начиная с версии 5.3. Пример замыкания с одной параметрической и одной контекстной переменной: PHP: <?php function getAdder($x) { return function ($y) use ($x) { // or: lexical $x; return $x + $y; }; } ?> Для более ранних версий возможно использовать одноименный шаблон проектирования, который реализуется в библиотеке Николаса Нассара.