深入淺析php中sprintf與printf函數(shù)的用法及區(qū)別
PHP sprintf() 函數(shù)
把百分號(%)符號替換成一個(gè)作為參數(shù)進(jìn)行傳遞的變量:
<?php $number = 2; $str = "Shanghai"; $txt = sprintf("There are %u million cars in %s.",$number,$str); echo $txt; ?>
定義和用法
sprintf() 函數(shù)把格式化的字符串寫入變量中。
arg1、arg2、++ 參數(shù)將被插入到主字符串中的百分號(%)符號處。該函數(shù)是逐步執(zhí)行的。在第一個(gè) % 符號處,插入 arg1,在第二個(gè) % 符號處,插入 arg2,依此類推。
注釋:如果 % 符號多于 arg 參數(shù),則您必須使用占位符。占位符位于 % 符號之后,由數(shù)字和 "\$" 組成。
語法
參數(shù) | 描述 |
---|---|
format |
必需。規(guī)定字符串以及如何格式化其中的變量。 可能的格式值:
附加的格式值。必需放置在 % 和字母之間(例如 %.2f):
注釋:如果使用多個(gè)上述的格式值,它們必須按照以上順序使用。 |
arg1 | 必需。規(guī)定插到 format 字符串中第一個(gè) % 符號處的參數(shù)。 |
arg2 | 可選。規(guī)定插到 format 字符串中第二個(gè) % 符號處的參數(shù)。 |
arg++ | 可選。規(guī)定插到 format 字符串中第三、四等 % 符號處的參數(shù)。 |
PHP printf() 函數(shù)
輸出格式化的字符串:
<?php $number = 9; $str = "北京"; printf("在%s有 %u 百萬輛自行車。",$str,$number); ?>
定義和用法
printf() 函數(shù)輸出格式化的字符串。
語法
printf(format,arg1,arg2,arg++)
參數(shù) | 描述 |
---|---|
format |
必需。規(guī)定字符串以及如何格式化其中的變量。 可能的格式值:
附加的格式值。必需放置在 % 和字母之間(例如 %.2f):
注釋:如果使用多個(gè)上述的格式值,它們必須按照上面的順序進(jìn)行使用,不能打亂。 |
arg1 | 必需。規(guī)定插到 format 字符串中第一個(gè) % 符號處的參數(shù)。 |
arg2 | 必需。規(guī)定插到 format 字符串中第二個(gè) % 符號處的參數(shù)。 |
arg++ | 可選。規(guī)定插到 format 字符串中第三、四等等 % 符號處的參數(shù)。 |
下面是一個(gè)示例:四舍五入保留小數(shù)點(diǎn)后兩位
<?php $num1 = 21; echo sprintf("%0.2f",$num1)."<br />"; //輸出 21.00 $num2 = 16.3287; echo sprintf("%0.2f",$num2)."<br />"; //輸出 16.33 $num3 = 32.12329; echo sprintf("%0.2f",$num3)."<br />"; //輸出 32.12 ?>
解釋下 %0.2f 的含義:
% 表示起始字符
0 表示空位用0填滿
2 表示小數(shù)點(diǎn)后必須占兩位
f 表示轉(zhuǎn)換成浮點(diǎn)數(shù)
轉(zhuǎn)換字符
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
% 印出百分比符號,不轉(zhuǎn)換。
b 整數(shù)轉(zhuǎn)成二進(jìn)位。
c 整數(shù)轉(zhuǎn)成對應(yīng)的 ASCII 字元。
d 整數(shù)轉(zhuǎn)成十進(jìn)位。
f 倍精確度數(shù)字轉(zhuǎn)成浮點(diǎn)數(shù)。
o 整數(shù)轉(zhuǎn)成八進(jìn)位。
s 整數(shù)轉(zhuǎn)成字串。
x 整數(shù)轉(zhuǎn)成小寫十六進(jìn)位。
X 整數(shù)轉(zhuǎn)成大寫十六進(jìn)位。
printf與sprintf的區(qū)別
1. printf函數(shù):
int printf ( string format [, mixed args [, mixed ...]] ) Produces output according to format , which is described in the documentation for sprintf() . Returns the length of the outputted string.
把文字格式化以后輸出,如:
$name="hunte"; $age=25; printf("my name is %s, age %d", $name, $age);
2. sprintf函數(shù):
string sprintf ( string format [, mixed args [, mixed ...]] ) Returns a string produced according to the formatting string format .
跟printf相似,但不打印,而是返回格式化后的文字,其他的與printf一樣。
3. print函數(shù):
是函數(shù),可以返回一個(gè)值,只能有一個(gè)參數(shù)。
int print ( string arg ) Outputs arg . Returns 1 , always.
相關(guān)文章
php+ajax+h5實(shí)現(xiàn)圖片上傳功能
這篇文章主要為大家詳細(xì)介紹了php+ajax+h5實(shí)現(xiàn)ajax圖片上傳功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-10-10PHP設(shè)計(jì)模式(五)適配器模式Adapter實(shí)例詳解【結(jié)構(gòu)型】
這篇文章主要介紹了PHP設(shè)計(jì)模式:適配器模式Adapter,結(jié)合實(shí)例形式詳細(xì)分析了PHP適配器模式Adapter基本概念、功能、原理、用法及操作注意事項(xiàng),需要的朋友可以參考下2020-05-05tp5(thinkPHP5框架)captcha驗(yàn)證碼配置及驗(yàn)證操作示例
這篇文章主要介紹了tp5(thinkPHP5框架)captcha驗(yàn)證碼配置及驗(yàn)證操作,結(jié)合實(shí)例形式分析了基于thinkPHP5框架的captcha驗(yàn)證碼配置及驗(yàn)證操作具體步驟與相關(guān)注意事項(xiàng),需要的朋友可以參考下2019-05-05Yii2.0高級框架數(shù)據(jù)庫增刪改查的一些操作
yii2.0框架是PHP開發(fā)的一個(gè)比較高效率的框架,集合了作者的大量心血,下面通過用戶為例給大家詳解yii2.0高級框架數(shù)據(jù)庫增刪改查的一些操作2015-11-11