php

How does PHP treat different values in boolean context?


I wonder how PHP handles true/false comparison internally. I understand that true is defined as 1 and false is defined as 0. When I do if("a"){ echo "true";} it echos "true". How does PHP recognize "a" as 1 ?


Solution

  • This is covered in the PHP documentation for booleans and type comparison tables.

    When converting to boolean, the following values are considered FALSE:

    Every other value is considered TRUE.