考虑到变量只能从HTML表单中获取字符串(input-text,textarea)。
答案 0 :(得分:3)
是的,strlen($str)==0
和empty($str)
之间存在差异。如果值为"0"
,则empty
会返回 true 。请参阅PHP type comparison tables。
答案 1 :(得分:1)
$var = 0;
strlen( $var ); // 1, coerced to true
empty($var) // true, it's considered "empty", these are the empty ones:
答案 2 :(得分:1)
以下是我发现的一些说明:
empty(),需要一个变量,只需要一个变量,所以我认为它在处理从魔法 __ get()获取的对象值时会出现问题方法。