-4

配列を検索して、一致した値を出力する必要があります。私の配列は次のとおりです。

$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 を返しますが、12 ではなく「Bungalows」を出力する必要があります。これを行うにはどうすればよいですか?

4

5 に答える 5

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
于 2013-06-09T08:02:25.003 に答える
1

キーが存在するかどうかを確認し、True の場合は値を出力する必要があります。

$key = "12";   
if (array_key_exists ( $key, $my_values) )  
{
     echo $my_values[$key];
}
于 2013-06-09T08:05:51.440 に答える
0

どうぞ。

<?php
$array = array(
    'foo'   => 'bar',
    1       => 'this',
    'that'  => 42
);

echo $array[ array_search('that', $array) ]; //42

アンソニー。

于 2013-06-09T08:01:07.247 に答える
0

$my_values[$id]トリックを行う必要があります

于 2013-06-09T08:01:18.830 に答える
0

値が "Bungalows" の場合は "Bungalows" と出力し、"Guest house" の場合は "Guest house" と出力する必要がありますが、"My house" の場合は何も出力しないでください。

これはうまくいくはずです:

$my_values = array(
'' => '---',
'12' => 'Bungalows',
'43' => 'Character property',
'277' => 'Guest house',
'49' => 'Flat share'
);

$search = 'Bungalows';

echo in_array($search, $my_values) ? $search : null;
于 2013-06-09T07:59:51.357 に答える