0
У меня действительно странная проблема, и я довольно смущен, работая над этим некоторое время. У меня есть это условиеPHP Входит в «if», хотя условие не может быть истинным
$save_res = $database->saveShift();
if ($save_res == "SHIFT_CONFLICT") {
$errors['insertShift'] = "error msg";
echo $save_res;
$valid = false;
} else if ($save_res) {
$notices['insertShift'] = "success msg";
$valid = true;
}
Теперь странная часть: $save_res is definitely not "SHIFT_CONFLICT"
, но верно или «1», когда я эхо его (внутри если заявление), но если $save_res == "SHIFT_CONFLICT"
условие истинно по какой-то причине, а код внутри оператора if выполняется.
Во-первых, используйте '' ===. –
И не используйте эхо для отладки, 'var_dump' нуждается в некоторой любви. – Rangad
true == "SHIFT_CONFLICT" имеет значение true, но true === "SHIFT_CONFLICT" является ложным. Поэтому использование идентично (===), а не euqals to (==), как указано в The Paramagnetic .... – Lekhnath