我需要搜索数组并打印匹配的值。 我的数组将是:
$my_values = array(
'' => '---',
'12' => 'Bungalows',
'43' => 'Character property',
'277' => 'Guest house',
'49' => 'Flat share'
);
这是我的数组,如果它与id匹配,我需要显示名称。假设,如果id为12,则需要显示Bungalows。 我知道这个:
$key = array_search('Bungalows', $my_values);
这段代码给了我12但是我需要输出'Bungalows'而不是12。我怎么会这样做?
答案 0 :(得分:2)
如果您正在搜索12
,请尝试以下操作:
$search = 12;
if (isset($my_values[$search])) {
echo $my_values[$search]; // Should output Bungalows
}
else {
echo 'Not found!';
}
如果您正在搜索Bungalows
,请尝试以下操作:
$search = 'Bungalows';
$key = array_search($search, $my_values);
echo $my_values[$key]; // Should output Bungalows
答案 1 :(得分:1)
您必须检查密钥是否存在,然后打印值,如果为True,
$key = "12";
if (array_key_exists ( $key, $my_values) )
{
echo $my_values[$key];
}
答案 2 :(得分:0)
所以,如果价值是“平房”,它应该打印“平房”,如果它的“宾馆”它应该打印“宾馆”,但如果它的“我的房子”它不应该打印任何东西?
这应该有效:
$my_values = array(
'' => '---',
'12' => 'Bungalows',
'43' => 'Character property',
'277' => 'Guest house',
'49' => 'Flat share'
);
$search = 'Bungalows';
echo in_array($search, $my_values) ? $search : null;
答案 3 :(得分:0)
你走了。
<?php
$array = array(
'foo' => 'bar',
1 => 'this',
'that' => 42
);
echo $array[ array_search('that', $array) ]; //42
安东尼。
答案 4 :(得分:0)
$my_values[$id]
应该做的伎俩