我想检查我的函数的参数是否具有'sender'和'receiver'的值。这些值应由数组给出。
这是我检查它们的方式:
if (is_array($target) && !in_array(array('receiver', 'sender'), $target)) {
exit('Please check the parameters. Allowed paramaters are: sender, receiver');
}
即使我的数组包含两个值,我总是从exit()获取消息。我的数组看起来像这样:
array(2){[0] => string(8)“receiver”[1] => string(6)“sender” }
答案 0 :(得分:1)
您正在检查sub array('receiver','sender')
中是否存在actual array
错误。
您必须单独检查两个项目是否在实际数组中退出。试试这个:
if (is_array($target) && !in_array('receiver',$target) && !in_array ('sender',$target)) {
exit('Please check the parameters. Allowed paramaters are: sender, receiver');
}
答案 1 :(得分:0)
您不能拥有像in_array()
这样的值的数组。试试这个:
if (is_array($target) &&
!(in_array('receiver', $target) || in_array('sender', $target))) {
exit('Please check the parameters. Allowed paramaters are: sender, receiver');
}