2016-07-13 13 views
1

Hoffentlich ein einfacher zu replizieren (es ist nicht mein Setup vorausgesetzt ...)PHP Ausgabe falsch herum

ich folgend in einem PHP-Skript habe:

echo('$userID:&emsp;' . var_dump($userID) . '<br>'); 
echo('$hashValidate:&emsp;' . var_dump($hashValidate) . '<br>'); 

Der Ausgang wie zeigt:

bool (false) $ userID:
bool (false) $ hashValidate:


Sollte es nicht so sein?

$ userID: bool (false)
$ hashValidate: bool (false)

+3

Nö, das ist richtig. –

+1

http://stackoverflow.com/questions/8364232/why-do-print-r-and-var-dump-execute-before-echo – ymas

Antwort

9

Nr var_dump() führt sofortige Ausgabe und hat keinen Rückgabewert. Das bedeutet, dass Ihr Code das gleiche läuft, als ob Sie

var_dump($var) 
echo('$userID:&emsp;<br>'); 

hatten Sie würden diese stattdessen brauchen:

echo '$userID:' 
var_dump(...); 
echo '<br>'; 
+0

Ich sehe, danke für die Klärung - und bietet eine Alternative! Ich werde akzeptieren, sobald das Zeitlimit überschritten ist .... –

3

Dieser Code:

echo('$userID:&emsp;' . var_export($userID, true) . '<br>'); 
echo('$hashValidate:&emsp;' . var_export($hashValidate, true) . '<br>'); 
+0

Fehlt die Informationen von MarcB Antwort, aber diese Methode ist wohl sauberer und entspricht zumindest näher OP Erwartungen. – GolezTrol

+0

Ich war nicht einmal bewusst von 'var_export' so danke :) –

+1

[link] (http://php.net/manual/en/function.var-dump.php) In PHP doc in" Siehe auch ". – Lakremon