J'essayais d'emprunter quelques paradigmes de programmation de JS à PHP (juste pour le plaisir). Y at-il une façon de faire:Fonctions auto-exécutables en PHP5.3?
$a = (function(){
return 'a';
})();
Je pensais que la combinaison de use
cela peut être une belle façon de cacher les variables de style JS
$a = (function(){
$hidden = 'a';
return function($new) use (&$hidden){
$hidden = $new;
return $hidden;
};
})();
en ce moment que je dois faire:
$temp = function(){....};
$a = $temp();
Il semble inutile ...
difficile à comprendre pour moi ... :) exactement ce que vous vouliez dire .. –
Je suis un peu confus ce que vous essayez d'accomplir ou pourquoi vous voulez exécuter des fonctions de cette façon. Bien que je sois à peu près sûr qu'il n'y a aucun moyen d'encapsuler une telle fonction en PHP. Les fonctions en javascript sont implémentées en classes, alors qu'en PHP ce sont des fonctions réelles. Pour cette raison, ils existent tous dans un espace de noms global, et non dans leur espace de noms autonome. La chose la plus proche d'une "fonction d'auto-appel" que je pourrais imaginer serait de définir la fonction dans 'eval()' – stevendesu
XiroX: pourriez-vous envisager de poser une question? – salathe