アプリ版:「スタンプのみでお礼する」機能のリリースについて

いつも世話になっております。
PHPの初歩的な質問をさせてください。
多次元配列において指定したキーの値を取り出す方法はありますでしょうか。

array_searchの逆というべきでしょうか、値を検索するのではなくキーを検索してその値を取り出したいです。

イメージ例
$array = array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red');
$val = array_xxx($array, 0); // $val = 'blue';

みたいな感じの…
関数でなくてもまったく問題ありませんが…
どうぞ、よろしくお願いいたします。

A 回答 (2件)

ごめんなさい意味がわからないのですが?



$array = array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red');
$val = $array[0];

じゃだめなんでしょうか?

この回答への補足

説明が不十分で申し訳ありません。

Array
(
[7] =>fruits
(
[apple] => red
[orange] => orange
[grape] => purple

)

上記のような例でappleの値を取りたいのですが、fruitsのキーがいつも[7]とは限らなく変動します。

なので

 $array[7][apple]

というような指定ができずに困っている状態です…。

補足日時:2012/04/19 13:54
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。

お礼日時:2012/04/19 22:06

ご提示の例もいまいち的を射ていないような・・・


ようは、多次元配列の先頭要素をぬきだして
その特定要素にアクセスしたいということでしょうか?

<?PHP
$fruits=array(
"7" =>array(
"apple" => "red"
,"orange" => "orange"
,"grape" =>"purple"
)
);
$temp_fruits=array_shift(array_merge($fruits,array()));
print $temp_fruits["apple"]."<br>\n";
print_r($temp_fruits);
?>
    • good
    • 0
この回答へのお礼

>ようは、多次元配列の先頭要素をぬきだして
>その特定要素にアクセスしたいということでしょうか?

まさに、おっしゃる通りです。
こちら、拙い質問にも関わらず、汲み取っていただきありがとうございます。

教えていただいた方法で解決出来ました。

余談ですが、object(stdClass)というものを
初めて知りました。

普通の配列のようにキーを指定しても値が取れず
また悩んでしまいましたが他の方の質問を参考にして解決できました。


本当に助かりました。
ありがとうございました。

お礼日時:2012/04/19 22:05

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!