2016-10-16 7 views
-2

私はいくつかのキーを持つ配列を持っており、キーが文字列内にある配列キーに従って配列値を取得したいと思います。文字列のキーを使用して配列の値を取得する方法

例:

$arr = array(
     "COV" => "Comilla Victorians", 
     "RK" => "Rajshaji Kings" 
    ); 

$str = "COV-RK"; 

は、今私はComilla Victorians VS Rajshaji Kingsを表示したいです。

私はいくつかのカスタムルーピングを使用してそれを行うことができますが、ここではスマートなコーディングが必要です。私はそれが私が知らない配列関数で作るいくつかの方法があると思う。あなたはこの試みることができる

+1

何を試してみましたか?ここに投稿 –

+0

「私はスマートなコーディングが必要です」 'echo $ arr ['COV']。 "VS"。$ arr ['RK']; '。 –

+0

私は 'foreach'ループといくつかの' explode() 'を使っていますが、配列関数を使ってそれを学びたいと思います。私は学びたいです...私は配列関数で何かを試していません。 – Mysterious

答えて

1

をあなたのような何かを行うことができます:だから$arrで一致するキーの値を返す、結果の配列をマッピングし、文字列を爆発

echo implode(' VS ', array_map(function($v) use ($arr) { return $arr[$v]; }, explode('-', $str))); 

を、それからそれを念入りにしてください。

+0

私はテストされていませんが、ずっと正確です。しかし、人々が努力していないと回答を投稿しないでください。 +1その間に –

+0

サー、これは素晴らしいですが、もう少し説明してください、私はこの事を学ぶ必要があります。 – Mysterious

+1

@神秘的なあなた*のみ* php.netのドキュメントを読む必要があります。私は、Googleの "PHPのimplode"とあなたが英語を理解する場合は、満足する必要があります。 –

1

: -

<?php 

$arr = array(
    "COV" => "Comilla Victorians", 
    "RK" => "Rajshaji Kings" 
); 

$str = "COV-RK"; 

$values = explode("-", $str); // explode string to get keys actually 

echo $arr[$values[0]] . " VS " . $arr[$values[1]]; // print desired output 
+0

なぜdownvotes?それは絶対に有効な答えです。 – nanocv

+0

nope。ちょっとしたコメントを読んでみてください。私はあなたに投票しませんでした –

+0

私はすでに爆発とforeachの助けを借りて、私はこれのための配列関数を学ぶ必要があります。 – Mysterious

関連する問題