2013-07-30 14 views

Odpowiedz

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

brakuje ""? –

+0

+1 było fajnie –

+0

thanx, lubię to +1 –

0

Oczywiście, oto jeden sposób, aby to zrobić. Potrzebuje trochę miłości, a PHP 5.3+

<?php 
$subject = array(
    'id' => '{{product-id}}' 
); 

$values = array(
    'product-id' => 1 
); 

array_walk($subject, function(& $item) use ($values) { 
    foreach($values as $template => $value) { 
     $item = str_replace(
      sprintf('{{%s}}', $template), 
      $value, 
      $item 
     ); 
    } 
}); 

var_dump(
    $subject 
); 
Powiązane problemy