我只是想知道从sprintf中省略一个参数是否会引起任何问题。
我无法回想起,但我认为在我的一个网站上,如果我省略了它错误的参数,但我在不同的服务器上尝试了它并且它没有发布所有php错误通知的任何问题上。
只想仔细检查!
示例:
sprintf('This is an example %s','test'); // outputs "This is an example test"
sprintf('This is an example','test'); // outputs "This is an example"
答案 0 :(得分:1)
如果传递的参数太少会出错,但太多很好。就像PHP的其余部分一样,如果你传递了太多的参数,它们就会被忽略。
$ php -r "echo sprintf('foo %s');"
PHP Warning: printf(): Too few arguments in Command line code on line 1
PHP Stack trace:
PHP 1. {main}() Command line code:0
PHP 2. printf() Command line code:1
Warning: printf(): Too few arguments in Command line code on line 1
Call Stack:
0.0005 314336 1. {main}() Command line code:0
0.0006 314408 2. printf() Command line code:1
$ php -r "printf('foo %s', 'foo', 'bar');"
foo foo