2
使用sprintf()
如何用一個值替換字符串中的多個佔位符?我通常知道每個佔位符都會傳遞1個變量,但我知道如果使用格式%1$s
而不是%s
,您可以傳遞一個值,但我似乎無法使其工作。php sprintf用一個值替換多個佔位符
實際上,我用這個作爲parametrised SQL查詢,但爲了方便這裏有一個簡單的例子
$name = "Bill";
$string = "hello ?, your name is ? ";
$string = sprintf(str_replace("?","'%1$s'",$string),$name);
這似乎並沒有工作。我也想讓它適用於單個佔位符,例如
$name = "Bill";
$string = "hello ?";
$string = sprintf(str_replace("?","'%1$s'",$string),$name);
- 是否有可能從一個值取代多個佔位符,並2.可在單個語句寫入處理單個或多個佔位符?
注意:我沒有專門討論使用vsprintf()
來傳遞數組,因爲只有1個值。似乎毫無意義地多次傳遞相同的值。
謝謝
超級,它總是很簡單!謝謝 – leejmurphy 2012-03-16 20:36:03