PHPsprintf()函数使用方法详解_PHP教程
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了PHPsprintf()函数使用方法详解_PHP教程,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含5632字,纯文字阅读大概需要9分钟。
内容图文
![PHPsprintf()函数使用方法详解_PHP教程](/upload/InfoBanner/zyjiaocheng/178/53c3f7b00ca340308f290de6d855838d.jpg)
用法
sprintf(format,arg1,arg2,arg++)
说明
参数 format 是转换的格式,以百分比符号 ("%") 开始到转换字符结束。下面的可能的 format 值:
?%% - 返回百分比符号
?%b - 二进制数
?%c - 依照 ASCII 值的字符
?%d - 带符号十进制数
?%e - 可续计数法(比如 1.5e+3)
?%u - 无符号十进制数
?%f - 浮点数(local settings aware)
?%F - 浮点数(not local settings aware)
?%o - 八进制数
?%s - 字符串
?%x - 十六进制数(小写字母)
?%X - 十六进制数(大写字母)
arg1, arg2, ++ 等参数将插入到主字符串中的百分号 (%) 符号处。该函数是逐步执行的。在第一个 % 符号中,插入 arg1,在第二个 % 符号处,插入 arg2,依此类推。
我在微信开放平台会看到如下代码
代码如下 | |
$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA); |
上面用到的是xml中了,下面再看一个网友写的例子
代码如下 | |
'; /** * 2. %b * 该参数只能替换整型数据。如果是浮点型,那么他只会取整数部分。小数点后边的会忽略 * 如果是一个非整型数据,那么返回 0 */ $testStr = '听说%b会替换成二进制数,真的吗?'; $arg = '10'; echo sprintf($testStr, $arg),' '; //-> 1010; $arg=10; 真的替换了! //-> 101; $arg=4.5 //-> 0; $arg=str/bool... echo ' '; /** * 3. %c 返回字符编码的ASCII码 * TIP:[他不是返回ASCII码] * $arg接受一个int传入即ASCII的数字值,然后返回该值对应的字符 */ $testStr = '我们来测试下 %c : 试试看能返回ASCII码吗'; $arg = '122'; echo sprintf($testStr, $arg); //-> A; $arg=65; //-> z; $arg=122 echo ' '; /** * 4. %d 将一段字符里的%d替换成int型 * TIP:这里可以是任意一个int整型。 * 如果是一个浮点数据,那么只会替换整数部分 * 如果是非数字的,那么会替换成0 */ $testStr = "这是一个ID,ID号是%d,"; $arg = '-4'; echo sprintf($testStr, $arg); //-> 4; $arg=4.5 //-> 0; $arg=[a-zA-Zs]; echo ' '; /** * 5. %e 科学计数法 * TIP:将一段很长很长的int整型数据以科学计数法的形式呈现 * 同%d,该函数同样会忽略掉小数点后面的,任何非数值数据替换成0 */ $testStr = "我很长,有N多位。。。 %e"; $arg = '46498464654864564642449463699789789313'; echo sprintf($testStr, $arg); //-> 4.649846e+14; $arg=464984646548645.64642449463699789789313 //-> 0.000000e+0; $arg=asdfasdf; echo ' '; /** * 5. %u - 无符号十进制数 * 不明白。。。如果有是负数,他的值不知道是啥值 */ $testStr = "我是无符号的十进制数。。。 %u"; $arg = '456'; echo sprintf($testStr, $arg); echo ' '; /** * 6. %f - 浮点数(local settings aware) * 难道和%d是相反的? * 这个会返回一个浮点数,并且小数点后面只有固定的6位 * 字符串同样为 0 ; */ $testStr = "和那个d有啥区别呢?%f"; $arg = '456.235645'; echo sprintf($testStr, $arg); echo ' '; /** * 7. %F - 浮点数(not local settings aware) * 难道和%f是相反的?怎么和小f没区别?不会吧 */ $testStr = "和那个小写的f有啥区别呢?%F"; $arg = '12312316.46898'; echo sprintf($testStr, $arg); echo ' '; /** * 8. %o - 八进制数 * 同%d一样。只不过参数传入一个八进制数值 */ $testStr = "将八进制数替换成十进制的 %o"; $arg = '8'; echo sprintf($testStr, $arg); echo ' '; /** * 9. %x - 十六进制数(小写字母) * 同%d/%o一样。只不过参数传入一个小写字母的十六进制数值 */ $testStr = "将十六进制数替换成十进制的 %o"; $arg = '456d12'; echo sprintf($testStr, $arg); echo ' '; /** * 10. %X - 十六进制数(大写字母) * 同%d/%o/%x一样。只不过参数传入一个大写字母的十六进制数值 * 貌似%x %X两个字母大小写没区别... */ $testStr = "将大写字母的十六进制数替换成十进制的 %o"; $arg = '456D12'; echo sprintf($testStr, $arg); echo ' '; /** * 11. %s - 字符串 * 用你传入的字符串替换掉%s */ $string = "这是用来测试的sprintf的字符串( %s )。今天消费了%f元。从西二旗到知春路有%d站。上班"; $arg = ''; echo sprintf($string, $arg, 234, 10); echo ' '; ?> |
http://www.bkjia.com/PHPjc/628892.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/628892.htmlTechArticle我们知道sprintf() 函数把格式化的字符串写写入一个变量中,我们经常会看到这类代码了,下面我来介绍sprintf() 函数使用方法,有需要的朋友...
内容总结
以上是互联网集市为您收集整理的PHPsprintf()函数使用方法详解_PHP教程全部内容,希望文章能够帮你解决PHPsprintf()函数使用方法详解_PHP教程所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。