2014-09-20 46 views
0

我有在內容部分variabiles頁面的數據塊,exmpale [VAR1],[名],[富],..動態str_replace函數瓦爾(不知道名字)

頁的例子:

喜[名],

是你[VAR1]或[富]

所有這些變量應與corrisponding PHP更換variabiles輸出

[VAR1]成爲$ VAR1 [名]成爲$命名

我知道我可以手動使用str_replace函數來改變這variabiles,例如:

echo(str_replace(array([var1], [name], [foo]), array($var1, $name, $foo), $page)); 

但有一種方式來創建一個循環,將自動替換所有這些瓦爾?

回答

0

讓我們考慮包含一些字符串數組如下:

array("var1","name","foo") 

所以這裏是解決方案:

<?php 
$rowdata=array("var1","name","foo"); 

foreach($rowdata as $key=>$value){ 
$rowdata[$key]="$".$value; 
} 

echo '<pre>'; 
print_r($rowdata); 
echo '</pre>'; 

>

0

試試這個代碼。這是工作。首先找到所有包含在括號中的字符串。然後使用preg_replace替換內容。

$text = '[This] is a [test] string, [try] it.'; 
preg_match_all("^\[(.*?)\]^", $text, $matches); 
$data = array_combine($matches[1],$matches[1]); 

foreach($data as $key =>$value) 
{ 
$text = preg_replace('/\['.$key.'\]/', '$'.$value, $text); 

} 
echo $text;