0

$insert複数のパラメーターを関数に渡すことができるように 、どのように拡張しますか{"Sample text %s this more %s."|inject:$foo:$foo2}

現時点では、1 つのパラメーターでのみ機能します。

/**
 * Smarty inject modifier plugin
 *
 * Type:     modifier<br>
 * Name:     inject<br>
 * Purpose:  sprintf with a IF empty wrapper
 *
 */
function smarty_modifier_inject($string, $insert)
{
    if(!empty($insert))
        return sprintf($string, $insert);
}
4

1 に答える 1

1

次のように、任意の数の引数を取るように inject 関数を変更する必要があります。

function inject(){
    $args = func_get_args();
    if(count($args) > 1){
        return call_user_func_array('sprintf', $args);
    }
}
于 2012-10-27T15:37:56.907 に答える