Php数组多维关联比较值
嗨,我有这样一个结构数组。我想比较一下这种情况Php数组多维关联比较值,php,foreach,Php,Foreach,嗨,我有这样一个结构数组。我想比较一下这种情况 if(dataInto[0]>=MyDataTypeFromInput && dataOut[0]<=MyDataTypeFromInput && room[0]==MyIdRoom) {...} 只需根据一个主要数组项的长度执行一个foreach循环: foreach( $array['dataInto'] as $key => $val ) { if ( $ar
if(dataInto[0]>=MyDataTypeFromInput && dataOut[0]<=MyDataTypeFromInput && room[0]==MyIdRoom) {...}
只需根据一个主要数组项的长度执行一个
foreach
循环:
foreach( $array['dataInto'] as $key => $val )
{
if
(
$array['dataInto'][$key] >= MyDataTypeFromInput
&&
$array['dataOut'][$key] <= MyDataTypeFromInput
&&
$array['room'][$key] == MyIdRoom
)
{
...
}
}
foreach($array['dataInto']as$key=>$val)
{
如果
(
$array['dataInto'][$key]>=MyDataTypeFromInput
&&
$array['dataOut'][$key]我不会在foreach循环中这样做,更明智的方法是使用for循环,因为所有索引都是数字的
for($i = 0; $i < count($arr['dataInto']); $i++){
if($arr['dataInto'][$i] >= MyDataTypeFromInput
&& $arr['dataOut'][$i] <= MyDataTypeFromInput
&& $arr['room'][$i] == MyIdRoom){
// etc..
}
}
我理解您的第二个代码,但我需要在字符串索引后搜索值。还有其他方法可以让它工作吗?我希望看到其他解决方案;)
for($i = 0; $i < count($arr['dataInto']); $i++){
if($arr['dataInto'][$i] >= MyDataTypeFromInput
&& $arr['dataOut'][$i] <= MyDataTypeFromInput
&& $arr['room'][$i] == MyIdRoom){
// etc..
}
}
foreach($arr as $key => $value){
echo $key, ', '; // ouput: "dataInto, dataOut, room"
foreach($value as $subkey => $subvalue){
echo $subkey, ' -> ', $subvalue; // will first loop dataInto and display all 3 values with numeric keys 0, 1, 2.
}
}