in php, why empty(“0”) returns true?

…衆ロ難τιáo~ 提交于 2019-12-01 03:31:50

empty roughly mirrors PHP's selection of FALSE-y values:

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

  • the boolean FALSE itself
  • the integer 0 (zero)
  • the float 0.0 (zero)
  • the empty string, and the string "0"
  • an array with zero elements
  • ...

As far as why PHP works this way, or why the empty function followed suit - well, that's Just The Way It Is.

Consider using strlen($x) (this is especially well-suited to sources like $_POST which are all string values) to determine if there is a non-empty string, including "0".

The final form I use would then be: isset($x) && strlen($x), with any additional processing applied knowing there was some post data.

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!