Php 数组搜索与第一个键不匹配
如果数组1的项在数组2中,我必须查看数组并想查看 我使用foreach遍历我的array2并使用array\u搜索每个项目(如果是array1) 除了数组搜索总是在第一个匹配的键上返回false之外,一切都正常。第一个匹配键是数组2的哪个索引并不重要 我做了一些研究,但什么都没用 即使是strict参数在我的代码中也不起作用Php 数组搜索与第一个键不匹配,php,arrays,Php,Arrays,如果数组1的项在数组2中,我必须查看数组并想查看 我使用foreach遍历我的array2并使用array\u搜索每个项目(如果是array1) 除了数组搜索总是在第一个匹配的键上返回false之外,一切都正常。第一个匹配键是数组2的哪个索引并不重要 我做了一些研究,但什么都没用 即使是strict参数在我的代码中也不起作用 $array1 = ["K", "L", "M"]; $array2 = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J"
$array1 = ["K", "L", "M"];
$array2 = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M"];
foreach($array2 AS $data) {
echo $data."<br>";
if(array_search($data, $array1) ? "TRUE" : "FALSE" === false) {
echo "TRUE<br>";
}
echo "<br>";
}
如果我将数组1更改为[“B”、“C”、“D”]
,则输出为:
A
B
C
TRUE
D
TRUE
E
F
G
H
I
J
K
L
M
我做错了什么?您需要像这样更改代码:
if(array_search($data, $array1) === false) {
echo "false<br>";
}
输出:在数组函数中使用 试试看
$array1 = ["K", "L", "M"];
$array2 = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M"];
foreach($array2 AS $data) {
echo $data."<br>";
if(in_array($data, $array1)) {
echo "TRUE<br>";
}
echo "<br>";
}
$array1=[“K”、“L”、“M”];
$array2=[“A”、“B”、“C”、“D”、“E”、“F”、“G”、“H”、“I”、“J”、“K”、“L”、“M”];
foreach($array2作为$data){
echo$数据。“
”;
if(在数组中($data,$array1)){
回声“真的
”;
}
回声“
”;
}
if(array\u search($data,$array1)?“TRUE”中的语法不好:“FALSE”==FALSE)因为您没有与array\u search
进行比较,因此当您与K
进行比较时,您会得到0
,这是错误的。将其更改为if(array\u search($data,$array1)!==false?“TRUE”:“false”)
是的,您是对的,谢谢。谢谢!如此明显:——)
foreach($array2 AS $data) {
echo $data .PHP_EOL. (array_search($data, $array1) !== false ? "true" : "false").PHP_EOL;
echo PHP_EOL;
}
$array1 = ["K", "L", "M"];
$array2 = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M"];
foreach($array2 AS $data) {
echo $data."<br>";
if(in_array($data, $array1)) {
echo "TRUE<br>";
}
echo "<br>";
}