if () не распечатывает данные json, если я не использую var_dump в php - PullRequest
1 голос
/ 31 января 2012
$json = file_get_contents($url);
$json_output = json_decode($json, TRUE);
var_dump($json_output);
if($json_output){
    echo "TRUE";
} else {
    echo "FALSE";
}   

данные из var_dump ($ json_output) равны

boolean true

, за которым следует TRUE из моего оператора if, если только я не удаляю var_dump ($ json_output), тогда ничего не происходит и TRUE не получаетсяраспечатан либо.Почему это происходит?

1 Ответ

1 голос
/ 31 января 2012

Можно убедиться, что при удалении строки var_dump вы допустили ошибку редактирования, которая вызвала синтаксическую ошибку (и т. П.), И, поскольку у вас отключено создание отчетов об ошибках, вы не увидите никаких выходных данных.

var_dump не влияет на значение переменной и, следовательно, не влияет на ее поведение в условном выражении.

$json = json_encode(true);
$json_output = json_decode($json, TRUE);
//var_dump($json_output);
if($json_output){
    echo "TRUE";
} else {
    echo "FALSE";
}

// output: TRUE
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...