haloi 发表于 2018-12-23 09:45:17

Php的false与0

  今天做一个php 数组的搜索value值判断,平常用c的时候没有注意到。
  php数组中有一个array_search(value,array,strict) 函数,
  array_search() 函数与 in_array() 一样,在数组中查找一个键值。如果找到了该值,匹配元素的键名会被返回。如果没找到,则返回 false。
  但是
  if(array_search(value,array,strict)==false){……}
  无论array中是否存在value,都会执行“……”的代码
  调试中发现原来,如果value在数组为第一位时,因为返回的是键名。那么会返回0,所以导致代码运行
  改为:
  if(array_search(value,array,strict)===false){……}
  或者
  if(array_search(value,array,strict)!==false){……}
  问题解决




页: [1]
查看完整版本: Php的false与0