基本的に私はこの配列を持っています:
array(
[0] => array("id" => "0", "header" => "img1"),
[1] => array("id" => "4", "header" => "img4")
[2] => array("id" => "6", "header" => "img6")
)
$id = "4" の場合、インデックス [1] を抽出して "ヘッダー" 値を取得するにはどうすればよいですか?
基本的に私はこの配列を持っています:
array(
[0] => array("id" => "0", "header" => "img1"),
[1] => array("id" => "4", "header" => "img4")
[2] => array("id" => "6", "header" => "img6")
)
$id = "4" の場合、インデックス [1] を抽出して "ヘッダー" 値を取得するにはどうすればよいですか?
これには foreach ループを実行する必要があります。しかし、正直なところ、単純な isset テストよりも優れた配列インデックスを構築し、そこに値があることを確認したら、値を取得することができます。
正しい方法:
$headers = array(0 => 'img1', 4 => 'img4', 6 => 'img6');
if (isset($headers[$index])) {
return $headers[$index];
}
配列でそれを処理する方法は次のとおりです(処理の観点からははるかにコストがかかります):
$headers = array(
0 => array("id" => "0", "header" => "img1"),
1 => array("id" => "4", "header" => "img4"),
2 => array("id" => "6", "header" => "img6")
);
foreach ($headers AS $value) {
if ($value['id'] == $index) {
return $value['header'];
}
}