Heim > Artikel > Backend-Entwicklung > Detaillierte Einführung in die Unterschiede zwischen echo print() print_r() var_dump() in PHP während des Debuggens
Gibt einen oder mehrere Werte (String) aus, getrennt durch Kommas. echo ist ein Sprachkonstrukt, keine echte Funktion und kann daher nicht als Teil eines Ausdrucks verwendet werden.
Die Funktion print() gibt einen Wert (seinen Parameter) aus, wenn die Zeichenfolge erfolgreich ist. Gibt zurück true, wenn angezeigt, andernfalls false. Wie Echo, aber langsamer als Echo.
Sie können Zeichenfolgen und Zahlen einfach ausdrucken. Wenn eine Zeichenfolge, eine Ganzzahl oder eine Gleitkommazahl angegeben ist, wird die gedruckt Variablenwert selbst. Das Objekt ähnelt einem Array. Arrays hingegen werden als in Klammern gesetzte Liste von Schlüsseln und Werten angezeigt, beginnend mit Array. Denken Sie daran, dass print_r() den Array-Zeiger an das Ende verschiebt. Verwenden Sie reset(), um den Zeiger an den Anfang zurückzusetzen.
$arr = array('name'=> 'bob','age' => 20, 'sex' => 'man'); print_r($arr);
Die Ausgabe hat die Form:
Array{ [name] => bob, [age] => 20, [sex] => man }
Aber ja, es macht keinen Sinn, print_r() zu verwenden, um boolesche Werte und NULL:
Zum Beispiel:print_r(true); //输出1 print_r(false); //没有输出 print_r(null); //没有输出Die Ergebnisse der Ausgabe von booleschen Werten und NULL durch print_r() sind bedeutungslos, da sie alle „n“ ausgeben. Daher eignet sich die Verwendung der Funktion var_dump() besser zum Debuggen.
zurück. Diese Funktion zeigt Strukturinformationen zu einem oder mehreren Ausdrücken an, einschließlich Typ und Wert des Ausdrucks. Arrays erweitern Werte rekursiv und zeigen ihre Struktur durch Einrückung an.
var_dump(true); //输出 bool(true) var_dump(false); // bool(false) var_dump(null); // bool(null) var_dump(array('name' => 'bob', 'age' => 20)); array(2) { ['name'] => string(3) 'bob' ['age'] => int(20) }
Die Unterschiede zwischen print_r(), var_export() und var_dump() sind wie folgt:
Ausgabe eines zweidimensionalen Arrays :
$arr=array( array('a'=>'aa','b'=>'bbb','c'=>'ccc'), array('a'=>'ddd','b'=>'eee','c'=>'fff'), array('a'=>'gg','b'=>'hh') ); echo "<pre class="brush:php;toolbar:false">"; print_r($arr);echo "";echo "
"; var_export($arr);echo "";echo "
"; var_dump($arr);echo "";Die Ausgabe von print_r($arr)
Array( [0] => Array ( [a] => aa [b] => bbb [c] => ccc ) [1] => Array ( [a] => ddd [b] => eee [c] => fff ) [2] => Array ( [a] => gg [b] => hh ) )Die Ausgabe von var_export($arr)
array ( 0 => array ( 'a' => 'aa', 'b' => 'bbb', 'c' => 'ccc', ), 1 => array ( 'a' => 'ddd', 'b' => 'eee', 'c' => 'fff', ), 2 => array ( 'a' => 'gg', 'b' => 'hh', ), )var_dump( $arr ) Ausgabeergebnis
array (size=3) 0 => array (size=3) 'a' => string 'aa' (length=2) 'b' => string 'bbb' (length=3) 'c' => string 'ccc' (length=3) 1 => array (size=3) 'a' => string 'ddd' (length=3) 'b' => string 'eee' (length=3) 'c' => string 'fff' (length=3) 2 => array (size=2) 'a' => string 'gg' (length=2) 'b' => string 'hh' (length=2)
Eine Ausgabe im JSON-Format ist unten angegeben:
$arr=array(array('a'=>'aa','b'=>'bbb','c'=>'ccc'), array('a'=>'ddd','b'=>'eee','c'=>'fff'), array('a'=>'gg','b'=>'hh')); $arra=json_encode($arr);echo "<pre class="brush:php;toolbar:false">"; print_r($arra);echo "";echo "
"; var_export($arra)echo "";echo "
"; var_dump($arra);echo "";print_r($arra) Ausgabe
[{"a":"aa","b":"bbb","c":"ccc"},{"a":"ddd","b":"eee","c":"fff"},{"a":"gg","b":"hh"}]var_export($arra) Ausgabe
'[{"a":"aa","b":"bbb","c":"ccc"},{"a":"ddd","b":"eee","c":"fff"},{"a":"gg","b":"hh"}]'var_dump($arra) Ausgabe
string '[{"a":"aa","b":"bbb","c":"ccc"},{"a":"ddd","b":"eee","c":"fff"},{"a":"gg","b":"hh"}]' (length=84)
Das obige ist der detaillierte Inhalt vonDetaillierte Einführung in die Unterschiede zwischen echo print() print_r() var_dump() in PHP während des Debuggens. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!