php多维数组if循环
我有一个这样的多维数组php多维数组if循环,php,if-statement,multidimensional-array,Php,If Statement,Multidimensional Array,我有一个这样的多维数组 $array['value'][1][1] if ($value = $array['value'][1][1]) { echo "It works"; } 现在我想实现这样的if循环 $array['value'][1][1] if ($value = $array['value'][1][1]) { echo "It works"; } 现在,如果我分配像[1][1],[2][1]这样的值,它就可以工作了 是否可以比较整个阵列 我是说如果数组看起来像 ar
$array['value'][1][1]
if ($value = $array['value'][1][1]) {
echo "It works";
}
现在我想实现这样的if循环
$array['value'][1][1]
if ($value = $array['value'][1][1]) {
echo "It works";
}
现在,如果我分配像[1][1],[2][1]
这样的值,它就可以工作了
是否可以比较整个阵列
我是说如果数组看起来像
array[value][1][1],array[value][2][1],……,array[value][n][1]
它可以工作
应该被回显
我试过了
if ($value = $array['value'][][]) {
echo "It works";
}
但它不起作用。有人能给我正确的语法吗?函数检查(){
function check() {
for($i = 0; $i < count($array[$value]); $i++) {
if($value != $array[$value][$i][1])
return FALSE;
}
echo 'It works!';
}
对于($i=0;$i
我不确定这是否是您正在寻找的功能,但您可以尝试此功能
在您的情况下,$value是1
function($array,$value)
foreach($array['amazon'] as $val){
if($value != $val[1])return FALSE;
}
return TRUE;
}
该函数通过$array['amazon'][*]运行,并检查每个值的条件。如果发现任何返回的值为FALSE,您可以尝试以下操作:
$itWorks = true;
for( $a = 0; $a < sizeof( $array[value] ); $a ++ ){
if ( $value != $array[value][$a][1] ){
$itWorks = false;
break;
}
}
if( $itWorks ){
echo "It works";
}
$itWorks=true;
对于($a=0;$a
当然,你必须用一个合法的值来替换[value]基于你对你所要完成的事情的评论,我认为下面可能会解决你的困境。如果我在这方面走错了方向,或者有任何其他问题/顾虑,请告诉我
<?php
$forms = array(
'amazon' => array(
0 => array(
1 => 111,
),
1 => array(
1 => 222,
),
2 => array(
1 => 333
)
)
);
$value = 333;
$it_works = False;
foreach($forms['amazon'] as $array) {
if($array[1] == $value) {
$it_works = True;
break;
}
}
if($it_works === True) {
print 'It Works!';
}
?>
在数组中迭代使用for循环有什么问题?您能否提供更多关于您试图实现的目标的信息?我很想帮你,但我不太明白你想要完成什么。您是在尝试确保数组具有正确的维度数,还是尝试迭代每个数组中的每个条目,如果存在,则打印“它有效”?@JoshuaBurns我有一些文本字段。单击“添加另一个”按钮可以复制其中的许多内容。有一个领域叫做亚马逊产品。在表单字段附近,我想显示一个链接按钮来搜索亚马逊产品。只有当数组看起来像表单[amazon][*][1]
时,才应显示此链接。我希望你明白我的意思。我尝试了for循环解决方案。但它只对第一个字段有效。返回到什么?将false设置为变量嘿,卡尔,谢谢你的回答。我有一些文本字段。单击“添加另一个”按钮可以复制其中的许多内容。有一个领域叫做亚马逊产品。在表单字段附近,我想显示一个链接按钮来搜索亚马逊产品。只有当数组看起来像表单[amazon][*][1]时,才应显示此链接。我希望你明白我的意思。我尝试了for循环解决方案。但它只适用于第一个字段。你好,伙计,我不知道如何使用这里的每个循环。实际上我有一个函数display_字段($field);我应该传递值以显示输入字段。因此,实际上在传递值时,如form[amazon][1][1]
它会显示字段。可以使用正则表达式吗?我的意思是,像这样表单[amazon][regex goes here][1]
如果我理解正确,您希望查看是否有任何数组包含键为“1”的数组。如果是这种情况,则不能使用正则表达式同时访问多个键。因此,foreach必须检查每个值。否。事实上,我想使用正则表达式来检查值,比如1,2,3等等,如果($value=form[amazon][regex匹配数字][1]){echo“link”;}下面是。我需要在第72行之后显示按钮