如何在 php 中搜索数组并在找到我的变量之一时返回 true


How do i search an array in php and return true if it finds one of my variable?

if (array_search($soca, $user_socs))

我知道这将通过输入变量和数组来搜索数组,但我想知道是否可以使其返回 true,因为由于它不返回 true,因此没有执行我的 if 语句。

引用

  • array_search文档

您需要对此函数进行编码,以便在找不到您要查找的内容时期望返回FALSE

所以

if (array_search($soca, $user_socs) !== false) {
    // then I found something
    // not sure what but its defintely not 
    // returning a failed to find situation
} else {
    // I did not find anything
}

请注意使用 !== 而不是 !=这明确适用于函数可以返回可能等于 false 但实际上不是 false 的实际数据的情况,即它可能返回第 0 次出现,这是一个有效的出现,如果您只是我们==,可能会与 false 混淆。

if (($key = array_search($soca, $user_socs)) !== FALSE) {
  ...
}