php: '0' as a string with empty()
问题 I want a 0 to be considered as an integer and a '0' to be considered as a string but empty() considers the '0' as a string in the example below, $var = '0'; // Evaluates to true because $var is empty if (empty($var)) { echo '$var is empty'; } how can I 'make' empty() to take '0's as strings? thanks. 回答1: You cannot make it. That is how it was designed. Instead you can write an and statement to test: if (empty($var) && $var !== '0') { echo $var . ' is empty'; } You could use isset , unless of