我試圖使用vsprintf()來輸出一個格式化的字符串,但是我需要在運行之前驗證它是否有正確數量的參數,以防止「太少爭論「的錯誤。如何在運行前檢查vsprintf的參數是否正確
從本質上講,我認爲我需要的是一個正則表達式來計算類型說明符的數量,但對於正則表達式我很無用,而且我無法在任何地方爲它提供資金,所以我認爲我會給出一個走。 :)
除非你能想到更好的方法,這個方法是沿着我想要的。
function __insertVars($string, $vars = array()) {
$regex = '';
$total_req = count(preg_match($regex, $string));
if($total_req === count($vars)) {
return vsprintf($string, $vars);
}
}
請告訴我,如果你能想到一個更簡單的方法。
完美的作品,謝謝。 – rich97 2010-01-13 02:30:35
rich97沒問題。 – 2010-01-13 02:36:48
但是如果'format ='%3 $ s''時函數的內容類似'vsprintf(format,args)'呢? – lmojzis 2013-06-05 02:01:49