PHP之sprintf函数用法详解
本文实例讲述了PHP中sprintf函数的用法。分享给大家供大家参考。具体用法分析如下:
sprintf()函数在php官方是说把字符串格式化输出了,本文就来给各位朋友介绍一下在学习sprintf()函数时的一些经验分享,希望能给大家带来帮助.
PHP函数sprintf()函数官方定义为:sprintf():把格式化的字符串写入一个变量中
语法为:sprintf(format,arg1,arg2,arg++);
参数:
format:必须,转换格式
arg1:必须,规定插入format字符串中第一个%符号处的参数
arg1:可选,规定插入format字符串中第二个%符号处的参数
arg1++:可选,规定插入format字符串中第三、四等%符号处的参数
参数format的转换格式,以百分比符号(%)开始到转换字符结束,下面是有可能的format值.
%%–返回百分比符号
%b–二进制数
%c–依照ASCII值的字符
%d–带符号十进制数
%e–可续计数法(比如1.5e+3)
%u–无符号十进制数
%f–浮点数(localsettingsaware)
%F–浮点数(notlocalsettingsaware)
%o–八进制数
%s–字符串
%x–十六进制数(小写字母)
%X–十六进制数(大写字母)
下面是一些demo,代码如下:
//1.%%:把%%替换成% $str='测试一下%%这个参数,会被替换成什么'; echosprintf($str); //返回结果:测试一下%这个参数,会被替换成什么(%%被替换成一个%)
//2.%b:该参数只能替换整型数据,如果是浮点型,只会取整数部分,会忽略小数点后面的数据。如果是非整型数据。返回0 $str='参数%b会替换成二进制数'; $arg='10'; echosprintf($str,$arg); //返回结果:参数1010会替换成二进制数 $arg=10.23; echosprintf($str,$arg); //返回结果:参数1010会替换成二进制数 $arg='abc'; echosprintf($str,$arg); //返回结果:参数0会替换成二进制数
//3.%c返回字符编码的ASCII码 $arg=65; $str= "数字{$arg}对应的ASCII码为%c"; echosprintf($str,$arg); //返回结果:数字65对应的ASCII码为A //4.%d将一段字符里的%d替换成int型,数据要求同$b相同 $str='ID号为%d'; $arg=-3; echosprintf($str,$arg); //返回结果:ID号为-3 $arg=4.5; echosprintf($str,$arg); //返回结果:ID号为4 $arg='abc'; echosprintf($str,$arg); //返回结果:ID号为0 //5.%s-字符串 $str="这是用来测试的sprintf的字符串(%s)。今天消费了%f元。从钟楼到小寨有%d站。上班"; $arg='%s'; echosprintf($str,$arg,6,5); //返回结果:这是用来测试的sprintf的字符串(%s)。今天消费了6.000000元。从钟楼到小寨有5站。上班