webentwicklung-frage-antwort-db.com.de

Listen Sie alle PHP Variablen auf

Ist es möglich, alle globalen Variablen in einem PHP Skript abzulegen? Angenommen, dies ist mein Code:

<?php
$foo = 1;
$bar = "2";
include("blah.php");
dumpall();
// displays $foo, $bar and all variables created by blah.php

Es ist auch möglich, alle definierten Konstanten in einem PHP Skript abzulegen.

47
Salman A

Verwenden get_defined_vars und/oder get_defined_constants

$arr = get_defined_vars();
print_r($arr);
86
nico

Wenn Sie versuchen, mit einem Programm wie WinMerge (Freeware) Unterschiede zu finden, um zu sehen, welche Unterschiede verschiedene Arrays und Variablen aufweisen, möchten Sie ksort(), andernfalls erhalten Sie viele falsch negative. Es ist auch hilfreich, mit dem HTML-Element pre visuell zu formatieren ...

<?php
$everything = get_defined_vars();
ksort($everything);

?>

Edit: musste darauf zurückkommen und erkannte, dass ich eine bessere Antwort hatte, $GLOBALS.

$a = print_r(var_dump($GLOBALS),1);
echo '<pre>';
echo htmlspecialchars($a);
echo '</pre>';

Edit 2: Wie in mpag erwähnt, kann print_r() zu wenig Arbeitsspeicher haben, wenn die Software, mit der Sie arbeiten, häufig verwendet wird. Vorausgesetzt, es gibt keine Ausgabe oder sie ist deutlich abgeschnitten und Sie haben Zugriff auf die Datei php.ini, Die Sie verwenden können Speicher anpassen benutze als so:

ini_set('memory_limit', '1024M');
11
John