2013-07-30 12 views
6

からの値を持つ配列内のプレースホルダを交換し、私は別の配列には、他のアレイ

arr1 = array(
    "id"  => "{{verticalId}}", 
    "itemPath" => "{{verticalId}}/{{pathId}}/"); 

arr2 = array(
     "verticalId" => "value1", 
     "pathId"  => "value2"); 

鍵であるプレースホルダと2つのアレイ1は、どのように私は、arr1上で実行され、arr2から値を持つプレースホルダを置き換えることができていますか?

答えて

5
foreach ($arr1 as $key => &$value) { 
    $value = preg_replace_callback('/\{\{(.*?)\}\}/', function($match) use ($arr2) { 
     return $arr2[$match[1]]; 
    }, $value); 
} 
+0

'' 'がありませんか? –

+0

+1は涼しかった –

+0

thanx、+1のように –

0

確かに、これを行う方法があります。しかし、少しの愛が必要です。PHP 5.3+