我再次需要你的帮助..。:/
我有一个循环,他们必须从一个数组中搜索另一个数组中的值,但这不会起作用。如果我在循环之外测试这个示例,那么请使用我的代码。
下面是我在循环之外的例子:
$lol = array_search("terra",$alleFarben);
echo("LOOL: ".$lol);
output:
LOOL: 195
但如果我循环做这个,他找不到195..:
loop:
for ($i=0; $i <count($colorNameFin) ; $i++) {
$colorNameFin[$i] = strtolower($colorNameFin[$i]);
echo($colorNameFin[$i]);
$pos = array_search($colorNameFin[$i],$alleFarben);
echo("<br>");
echo($pos);
echo("<br>");
}
output:
terra
artikel
156
artikel是数组'colorNameFin‘中的下一个条目。我不明白,为什么array_search会在循环之外找到我的"terra“,而不是在里面。
感谢您的阅读:)
更新:
我有三个数组
1. colorNameFin = read color names from a csv like terra or blue fog and so on..
2. alleFarben = contains all of this colours on a specific position, like terra in colorNameFin = 195 in alleFarben
3. farbenNormal = contains the correct color to terra on the same position where it stored in alleFarben so i can read terra and search in farbenNormal[195] = yellow if i read terra in colorNameFin
发布于 2018-08-24 07:08:44
您可以使用array_column($colorNameFin, 'column_key')
返回column_key列中的所有值,并将它们赋给一个新变量,这将是一个数组。然后在数组$words
中搜索$colorNameFin[$i]
<?php
$words = array_column($colorNameFin, 'column_key');
$found_key = array_search($colorNameFin[$i], $words);
发布于 2018-08-25 04:24:13
@Nick给了我正确的提示,我在数组alleFarben中搜索的字符串包含一个空格。所以在数组alleFarben中找不到正确的字符串,我对这个问题的解决方案是:
for ($i=0; $i <count($colorNameFin) ; $i++) {
$colorNameFin[$i] = strtolower($colorNameFin[$i]);
$colorNameFin[$i] = str_replace(' ','',$colorNameFin[$i]);
$pos = array_search($colorNameFin[$i],$alleFarben);
$colorOut[$i] = $farbenNamenNormal[$pos];
}
感谢所有考虑过我的问题的人:)
https://stackoverflow.com/questions/51994981
复制相似问题