J'ai besoin d'un moyen de voir toutes les variables définies de l'instance PHP actuelle.
Par actuellement défini, je veux dire tous les globals, tous les locaux à cette portée et tous les locaux à d'autres portées.
Y a-t-il quelque chose de intégré?Comment puis-je voir ** toutes ** les variables actuellement définies en PHP?
Répondre
Pour tout dans le périmètre actuel:
print_r(get_defined_vars());
Je ne pense pas qu'il y ait une solution pour vider toutes les variables de tous les champs d'application, parce que vous devez exécuter effectivement les fonctions/méthodes pour obtenir une complète et une carte intacte de toutes les variables disponibles (les variables pourraient être créées, ajoutées et supprimées lors de l'exécution).
Vous devrez peut-être vous intéresser aux outils de test unitaire ou de couverture de code pour voir si vous pouvez utiliser quoi que ce soit de ces zones, mais cela demandera beaucoup de travail.
Qu'est-ce que vous en avez besoin?
var_dump ($ GLOBALS);
Si une variable n'est pas définie au moment où cette instruction s'exécute, il est impossible d'en parler comme ayant une valeur. Les variables dans les "autres" étendues n'existent pas.
{
$a = new myClass();
do stuff
$a->destroy();
}
print "$a has no meaning in this context";
Que voulez-vous dire? existe "ils prennent toujours la mémoire, non? –
Je pense que je vois, pense à l'appel de fonction à l'intérieur d'un appel de fonction à l'intérieur d'un appel de fonction, et je dois le connaître dans la fonction la plus interne. –
Ahhhh ... c'est discuté ici http://stackoverflow.com/questions/3418413/get-variables-in-scope-at-each-php-backtrace-level en vain –
- 1. Afficher toutes les variables actuellement définies
- 2. PHP détecter si toutes les variables d'URL ont été définies
- 3. Quelle est la meilleure façon de découvrir toutes les variables actuellement définies par une application Perl?
- 4. Comment énumérer toutes les variables définies dans un script groovy
- 5. Comment voyez-vous quelles fonctions et variables sont actuellement définies en javascript?
- 6. Comment examiner les constantes définies en PHP?
- 7. En JSP, existe-t-il un moyen de voir toutes les variables disponibles dans la portée spécifique comme en PHP?
- 8. Comment obtenir toutes les variables définies dans la portée/table de symboles actuelle?
- 9. PHP Toutes les variables de fonction Global
- 10. Les variables définies php ont des valeurs nulles
- 11. Comment saisir toutes les variables dans un message (PHP)
- 12. PHP Détecter si des variables d'URL ont été définies
- 13. Mathematica manipule les variables déjà définies
- 14. Liste toutes les classes qui existent actuellement
- 15. Comment les constantes sont-elles définies et utilisées en PHP?
- 16. actionscript: variables publiques non définies?
- 17. variables-variables en PHP
- 18. Comment trouver les variables définies dans une fonction
- 19. Existe-t-il un moyen de transmettre toutes les variables définies à un GroovyShell?
- 20. Quand les variables doivent-elles être définies dans une classe
- 21. PHP/Zend se plaint de variables non définies
- 22. Obtenez un dict de toutes les variables actuellement portée et leurs valeurs
- 23. Obtenez toutes les variables Javascript?
- 24. Comment PHP gère-t-il les variables en RAM?
- 25. php - variables globales dans toutes les fonctions de classe
- 26. $ _SESSION toutes les variables $ _POST?
- 27. Accéder à toutes les variables locales
- 28. Dans FitNesse, les variables de can peuvent-elles être définies en fonction d'autres variables?
- 29. Comment afficher les variables en cas d'erreur?
- 30. Comment lister toutes les variables de contexte disponibles?
Je fais face à un énorme projet (je veux dire, vraiment, des centaines de milliers de lignes de code). J'ai parfois besoin de voir la "plus grande" image de ce qui se passe. –
@Itay je vois. Avez-vous hérité du projet? Le code est-il documenté? Ce genre d'aperçu est mieux réalisé grâce à la documentation en ligne que phpdoc peut donner un sens. –
@pekka - vous avez raison dans toutes vos hypothèses, sauf celles sur la documentation: -DDD (c'est-à-dire il n'y a pas de documentation, pas de noms de symboles significatifs etc) –