Php 使用开关盒检查数组是否包含某些键
问题正如标题所说。我需要检查一个数组是否包含开关盒中的某个键。我需要使用开关盒,因为我需要检查3个以上的元件。我不知道该怎么做 比如说Php 使用开关盒检查数组是否包含某些键,php,arrays,if-statement,switch-statement,key,Php,Arrays,If Statement,Switch Statement,Key,问题正如标题所说。我需要检查一个数组是否包含开关盒中的某个键。我需要使用开关盒,因为我需要检查3个以上的元件。我不知道该怎么做 比如说 $update = array(); $update['message'] = array('photo' => array(array('file_id' => 1234, 'file_size' => 3451), array('file_id' => 64254, 'file_size'=>51235))); 我需要检查数组
$update = array();
$update['message'] = array('photo' => array(array('file_id' => 1234, 'file_size' => 3451), array('file_id' => 64254, 'file_size'=>51235)));
我需要检查数组$update['message']是否包含一个名为'photo'的键(以及其他元素),这就是我需要switch子句的原因)
如果有人能指出这是如何正确完成的,我们将不胜感激
我知道我可以用嵌套的if语句来实现这一点,但这并不是那么干净和高效
更新:
我已经找到了一个解决方案,尽管它有效,但我不确定这是否是正确的方法。如有任何建议,将不胜感激。
详情如下:
switch($update['message'])
{
case (array_key_exists('photo', $update['message'])): echo 'hello'; break;
default:break;
}
像这样试试
switch(array_key_exists('photo', $update['message']))
{
case true: echo 'hello'; break;
default:break;
}
像这样试试
switch(array_key_exists('photo', $update['message']))
{
case true: echo 'hello'; break;
default:break;
}
你的意思是像数组()中的
?不,等等,这将是array\u key\u exists()
不是吗。我找到了解决方案,我更新了问题。请看一看:)“我需要使用开关盒,因为我需要检查3个以上的元素。”你的意思是数组只能包含3个键中的一个?如果开关盒包含所有3个开关,则开关盒将无法连接。它只会检测您在开关盒中放在第一位的一个。是的,我查找的x个键中的一个。是否有可能$update['message']
有多个键?您的意思是像in_array()
?不,等等,这将是array\u key\u exists()
不是吗。我找到了解决方案,我更新了问题。请看一看:)“我需要使用开关盒,因为我需要检查3个以上的元素。”你的意思是数组只能包含3个键中的一个?如果开关盒包含所有3个开关,则开关盒将无法连接。它只会检测您在开关盒中放在第一位的键。是的,我查找的x个键中的一个。是否有可能$update['message']
有多个键?这与if-else语句相同:)这与if-else语句相同:)