如何在以下方案中进行简单检查。这是我的阵列:
[data] =>排列 ( [0] =>博客 ... )
这似乎不起作用:
if(isset($data[1]) != "page") {
do stuff here...
}
我需要检查是否设置了键[1]且值不等于"页面"
答案 0 :(得分:1)
if(isset($data) && isset($data[1]) && $data[1] != 'page') {
// do something
}
你可能在想,“他为什么不检查$data
是否是阵列?”因为没关系,你可以从PHP中的下标访问字符串。
答案 1 :(得分:0)
Isset只返回布尔值,因此您无法将结果与字符串' page'进行比较。你需要进行2次单独的检查。
此外,我不确定您是否要检查第一个元素是否有页面或索引1处的元素是否有页面(如果您不定义,则php数组从0开始)。
但它至少应该是if(isset(data [1])&& data [1]!=' page')
答案 2 :(得分:0)
你做错了,因为isset
将返回bool而不是$data[1]
的值。
无论如何,您可以尝试以下方法:
if(isset($data) && array_key_exists(1, $data) && $data[1] != "page")
do stuff here...
}
如果array_key_exist
数组中存在key 1
, $data
将返回true,然后将data[1]
与字符串进行比较。
答案 3 :(得分:0)
我找到了更好的解决方案:
if(!array_search("page", $data)) {
// do stuff here
}
这对我有用