Confusão de conversão de tipo PHP
Eu tenho o seguinte código:
<?php
$val = 0;
$res = $val == 'true';
var_dump($res);
?>
Eu sempre tive a impressão de que $ res deveria ser 'false', como na expressão acima, o PHP tentaria digitar cast $ val para o tipo booleano (onde zero será convertido como false) e uma string (string não vazia é true). Mas se eu executar o código acima, a saída será:
boolean true
Estou esquecendo de algo? Obrigado.