İç içe fonksiyonları genellikle hiç kullanılmamalıdır. Sınıflar ve kamu / özel yöntemleri çok daha temiz sorunların aynı tür çözmek.
Ancak, işlev üretme fonksiyonları yararlı olabilir:
<?php
# requires php 5.3+
function make_adder($a)
{
return function($b) use($a) {
return $a + $b;
};
}
$plus_one = make_adder(1);
$plus_fortytwo = make_adder(42);
echo $plus_one(3)."\n"; // 4
echo $plus_fortytwo(10)."\n"; // 52
?>
Bu örnek yapmacık ve saçma olduğunu, ancak bu tür bir şey sıralama rutinleri, vb tarafından kullanılan işlevleri oluşturmak için yararlı olabilir