Я не использую php в качестве основного языка бэкэнда, но иногда мне нравится тестировать некоторые вещи на разных языках, и я вижу, что это, если не сработает.Зачем?$ var это строка, поэтому она существует.
$var = '0'; if($var) { echo 'a'; }
PHP обрабатывает '0' как 0, что равно false, поэтому ваше утверждение уменьшается до
'0'
0
false
if(false) { echo 'a'; }