我有一个多阵列:
$bouton["modify-customer"] = array("fr"=>"liste-client", "en"=>"customer-list");
$bouton["create-customer"] = array("fr"=>"creer-client", "en"=>"create-customer");
$bouton["modify-item"] = array("fr"=>"liste-item", "en"=>"item-list");
$bouton["create-item"] = array("fr"=>"creer-item", "en"=>"create-item");
$bouton["modify-taxes"] = array("fr"=>"liste-taxes", "en"=>"taxes-list");
$bouton["create-taxes"] = array("fr"=>"creer-taxes", "en"=>"create-taxes");
在一个页面中,我有这个字符串:“监听税”
我需要找到:“ tax-list ”
我怎样才能完成这项任务? ...
我知道我需要在这里找到正确的密钥,并且它是修改税收然后我可能会找到另一个值而不是fr
,但{ {1}}一个。
我知道我不是很清楚,我的英语不是很好,但我希望你们能帮助我,我会留在网站上,这样我就可以回答你的问题并在未来与你交谈评价。
感谢。
答案 0 :(得分:1)
你想循环遍历数组并搜索如下的值:
foreach($bouton as $key => $array){
if( in_array("liste-taxes",$array)){
echo $key . PHP_EOL;
echo $bouton[$key]['en'];
}
}
输出:
modify-taxes
taxes-list
答案 1 :(得分:1)
array_walk($bouton, function ($val) use ($searched, $lang, &$result) {
if (in_array($searched, $val))
$result = $val[$lang];
});
其中$searched
是您搜索的字符串,$lang
您搜索的语言。 $result
将包含最终值。
示例:
$bouton["modify-customer"] = array("fr"=>"liste-client", "en"=>"customer-list");
$bouton["create-customer"] = array("fr"=>"creer-client", "en"=>"create-customer");
$bouton["modify-item"] = array("fr"=>"liste-item", "en"=>"item-list");
$bouton["create-item"] = array("fr"=>"creer-item", "en"=>"create-item");
$bouton["modify-taxes"] = array("fr"=>"liste-taxes", "en"=>"taxes-list");
$bouton["create-taxes"] = array("fr"=>"creer-taxes", "en"=>"create-taxes");
$searched = "liste-taxes";
$lang = "en";
array_walk($bouton, function ($val) use ($searched, $lang, &$result) {
if (in_array($searched, $val))
$result = $val[$lang];
});
print $result;
答案 2 :(得分:1)
只需迭代你的数组并找到翻译:
$search = "liste-taxes";
$bouton["modify-customer"] = array("fr"=>"liste-client", "en"=>"customer-list");
$bouton["create-customer"] = array("fr"=>"creer-client", "en"=>"create-customer");
$bouton["modify-item"] = array("fr"=>"liste-item", "en"=>"item-list");
$bouton["create-item"] = array("fr"=>"creer-item", "en"=>"create-item");
$bouton["modify-taxes"] = array("fr"=>"liste-taxes", "en"=>"taxes-list");
$bouton["create-taxes"] = array("fr"=>"creer-taxes", "en"=>"create-taxes");
array_walk($bouton, function($v, $i) use($search) {
if($v['fr'] === $search) {
echo $v['en'];
}
});
答案 3 :(得分:0)
你可以建立一个方便的翻译功能....
function translate($array, $searchterm, $lan){
foreach($array as $key => $array){
if( in_array($searchterm,$array)){
return $array[$lan];
}}}
然后只需将数组,术语和语言传递给它, 并且你将获得fr或en版本,具体取决于你指定的内容。
echo translate($bouton,"taxes-list","fr");
答案 4 :(得分:0)
foreach($bouton as $key => $array){
if( in_array("taxes-list",$array)){
echo $key . PHP_EOL;
echo $bouton[$key]['en'];
}
}
感谢immulatin,php subuer01和bebi !!!工作就像一个魅力。