海北网站建设,专业的网页设计服务,贵州省住房和城乡建设厅网站官网,计算机类17个专业PHP中 sprintf()格式化输出详解sprintf()函数把格式化的字符串写入变量中。arg1、arg2、参数将被插入到主字符串中的百分号(%)符号处。该函数是逐步执行的。在第一个%符号处#xff0c;插入arg1,在第二个%符号处#xff0c;插入arg2#xff0c;以此类推。注释#xff1a;如…PHP中 sprintf()格式化输出详解sprintf()函数把格式化的字符串写入变量中。arg1、arg2、参数将被插入到主字符串中的百分号(%)符号处。该函数是逐步执行的。在第一个%符号处插入arg1,在第二个%符号处插入arg2以此类推。注释如果%符号多于arg参数则您必须使用占位符。占位符位于%符号之后由数字和“\$”组成。$number 2;$str Shanghai;$txt sprintf(There are %u million cars in %s.,$number,$str);echo $txt;?运行结果为There are 2 million cars in Shanghai.1.使用格式值%f:$number 123;$txt sprintf(%f,$number);echo $txt;?运行结果为123.0000002.使用占用符$number 123;$txt sprintf(带两位小数%\$.2f不带小数%1\$u,$number);echo $txt;?运行结果为带有两位小数123.00不带小数123在php的格式化字符串中%后的一个字符(除了%)会被当作字符类型而被吃掉单引号斜杠\也不例外。如果能提前将% and 11#拼接入sql语句若存在SQLi过滤单引号会被转义成\select * from user where username %\ and 11#;然后这句sql语句如果继续进入格式化字符串\会被%吃掉成功逃逸sql select * from user where username %\ and 11#;$args admin;echo sprintf($sql,$args);result: select * from user where username and 11# and password admin;