2013-04-10 42 views
0

我有一些字符串通過幾個類來進行更改,使得更改變得困難。我想要做的是有一個配置功能,將所有的字符串放入變量中,並在程序中使用,因此我只需編輯一個函數。 (PHP)如何在中間存儲一個變量的語言字符串,Php

我的問題是我怎麼能有一個字符串(或其他數據類型),讓我以後進行協商。例如:

$vars = array('one', 'two', 'red', 'blue'); 
foreach($vars as $var) { 
    echo "List all rows with <strong>$var</strong> in the column.<br/>"; 
} 

名單在列一個所有行。
列出兩列中的所有行列。
列出列中所有包含紅色的行。
列出藍色中的所有行。

我想堅持「列出$ var列中的所有行」。在另一個地方,然後在另一個函數中添加$ var。我知道我可以保留兩個變量或將它放入一個數組中,但我覺得必須有一些我錯過的數據結構,這可以使這個工作更容易。

謝謝!

回答

1

請閱讀printf(),您不必擔心變量的命名。

$string = "List all rows with <strong>%s</strong> in the column.<br/>"; 
$var = "herp"; 

printf($string, $var); 

function something() { 
    $something_else = 'derp'; 
    printf($string, $something_else); 
} 

something(); 
+0

完美這正是我所需要的。謝謝! – RachelC 2013-04-10 19:25:37

1
$str = "blah blah blah {var}"; 
.... 
$output = str_replace("{var}",$someVar,$str); 

閱讀模板。

2
<?php  
$str = "blah blah blah {var}"; 
.... 
$output = str_replace("{var}",$someVar,$str); 

好sollution,@Andrej。但調整:

<?php 
$search = array("{name}"); 
$replace = array($name); 
$var = str_replace($search, $replace, "My name is {name}"); 
+1

但preg_replace需要更多時間。如果你真的不需要regullar表達式,最好不要使用它。 – 2013-04-10 20:02:29

+1

哦,是的。 Fix'd :) – 2013-04-10 20:04:31

相關問題