Я столкнулся с проблемой, когда php обрабатывает «0» по-разному.PHP обрабатывал «0» как пустой?
Я бегу следующий сценарий на 2 разных машинах:
$a = "0";
if ($a) {
echo("helo");
}
1) Локальная машина -> PHP 5.2.17 -> это лечится "0" действительным и распечатать 'вертолёт'
2) Сервер -> PHP 5.3.6 -> он обрабатывал «0» как пустой/ложный и не печатает «helo»
Это связано с конфигурацией php (если да, какая конфигурация) или php версия?
PHP 5.2.17 (Win32) does * not * print "helo", когда '$ a =" 0 ";' (просто проверял его на CLI и через Apache, чтобы убедиться). У вас должен был быть и другой символ в строке - возможно, символ пробела, который был невидимым при печати, например '\ r'? – DaveRandom