Php 如何在一个foreach循环中检查两个数组?
如何检查foreach循环中的任何键是否存在于另一个数组的值中 我要检查数组1Php 如何在一个foreach循环中检查两个数组?,php,multidimensional-array,Php,Multidimensional Array,如何检查foreach循环中的任何键是否存在于另一个数组的值中 我要检查数组1 $array1 = array( 'a' => '1', 'b' => '2', 'c' => '3', ); 以及应与阵列1进行比较的阵列2 $reserved_words = array('b'); 我想要的是检查条件检查是否为TRUE以应用特定操作。我的代码现在看起来像这样: foreach( $array1 as $key => $value ) {
$array1 = array(
'a' => '1',
'b' => '2',
'c' => '3',
);
以及应与阵列1进行比较的阵列2
$reserved_words = array('b');
我想要的是检查条件检查是否为TRUE以应用特定操作。我的代码现在看起来像这样:
foreach( $array1 as $key => $value )
{
// Check for reserved words
if( in_array($key, $reserved_words)
{
// Some action
}
// Code...
}
我找不到任何类似于array\u key\u存在的东西
,可能我遗漏了什么
我想通过简单地执行以下操作来检查它:
if( array_value_exists($value, $reserved_words) )
但是问题是没有可用的
array\u value\u函数。您首先忘记了foreach头中的as
关键字,并且在if语句中遗漏了一个)
因此,这应该是可行的:
<?php
$array1 = array(
'a' => '1',
'b' => '2',
'c' => '3',
);
$reserved_words = array('b');
foreach( $array1 as $key => $value ) {
//^^Here 'as' keyword
if( in_array($key, $reserved_words)) {
echo $key; //^Here ')' closed if statement
}
}
?>
您缺少“as”关键字。请输入下面的代码
foreach($array1 as $key => $val){
if(in_array($key, $reserved_words)){
echo "yes";
} else {
echo "no";
}
}除了缺少作为
关键字之外,还有什么问题?您好,我想您是在寻找您描述的内容。甚至不需要foreach循环?对不起,我是在手机上输入的。任何类似于array\u key\u的东西都存在
但用于检查值而不是键?@Fluffeh-这很好,但不完全是我需要的。我需要检查$someArray
中是否存在valuesomestring
。但无论如何,谢谢你,我也做了同样的检查,但是在数组中,我没有工作,我做了完全相同的检查。我会再检查一遍,我猜我打错了什么。@aspirinemaga从我的答案中复制完整的代码。它应该有用!您应该得到输出“b”
foreach($array1 as $key => $val){
if(in_array($key, $reserved_words)){
echo "yes";
} else {
echo "no";
}