数组中项的PHP函数
我有一个从数据库结果创建的数组。它包含基于权限在UI上允许的“视图”列表 我正在尝试创建一个可以传递视图的函数,它会告诉我它是否存在于数组中 我的阵列:数组中项的PHP函数,php,arrays,loops,Php,Arrays,Loops,我有一个从数据库结果创建的数组。它包含基于权限在UI上允许的“视图”列表 我正在尝试创建一个可以传递视图的函数,它会告诉我它是否存在于数组中 我的阵列: [views] => SimpleXMLElement Object ( [keys] => Array ( [0] => SimpleXMLElement Object
[views] => SimpleXMLElement Object
(
[keys] => Array
(
[0] => SimpleXMLElement Object
(
[view] => viewOriginalFeedback
)
[1] => SimpleXMLElement Object
(
[view] => viewTarget
)
)
)
)
我的PHP函数:
function getViews($val) {
// Define as global
global $perms;
// Loop over array
foreach ($perms as $item){
if (isset($item['view']) && $item['view'] == $val){
return true;
}else{
return false;
}
}
}
echo getViews('viewTarget');
它从不在我的echo语句中返回任何内容
注意到我遗漏了什么吗
更新:我的数组从键开始
$perms=$permissions->data->views->KEYS代码>
更新2
这似乎已经解决了它。我必须移动返回false代码>在IF语句之外,因此不会被真值重写
function getViews($val) {
// Define as global
global $perms;
// Loop over array
foreach ($perms as $item){
if (isset($item->view) && $item->view == $val){
return true;
}
}
return false;
}
不清楚您的数组是否完全按照显示的方式传递,但如果是,请尝试以下操作:
function getViews($val) {
// Define as global
global $perms;
// Loop over array
foreach ($perms['keys'] as $item){
if (isset($item['view']) && $item['view'] == $val){
return true;
}
}
return false; }
既然它是一个对象,你有没有尝试过->如果(isset($item->view)&&&$item->view=$val){
?这似乎对我不起作用