La fonction non appelable
<?php
function foo() {
echo __METHOD__;
yield 1;
}
foo(); // displays nothing, no code is executed
echo 'the end'; // displays the end
?>
La fonction foo() ne peut pas être appelée. Lorsque le code le fait, rien ne se passe.
L’astuce est l’inclusion d’un appel à yield (ou yield from) dans la fonction. Cela transforme la fonction en générateur, et l’appeler directement ne fait rien. Elle doit être appelée avec foreach() ou iterator_to_array().
Cette astuce s’applique aux fonctions, aux fonctions fléchées, aux closures et aux méthodes.
See Also
PHP Features
Last updated: 11 October 2026