我只是想知道省略 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"
如果传递的参数太少会出错,但传递太多也可以。 就像 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