您好,登錄后才能下訂單哦!
這篇文章主要介紹“php中的sprintf是什么”,在日常操作中,相信很多人在php中的sprintf是什么問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”php中的sprintf是什么”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
1.填空字元。0的話表示空格填0;空格是內定值,表示空格就放著。
2.對齊方式。內定值為向右對齊,負號表向左對齊。
3.欄位寬度。為最小寬度。
4.精確度。指在小數點后的浮點數位數。
型態,見下表
轉換字符
%印出百分比符號,不轉換。
b整數轉成二進位。
c整數轉成對應的ASCII字元。
d整數轉成十進位。
f倍精確度數字轉成浮點數。
o整數轉成八進位。
s整數轉成字串。
x整數轉成小寫十六進位。
X整數轉成大寫十六進位。
php中字符串格式化函數sprintf是什么
例子:
$money1=68.25;
$money2=54.35;
$money=$money1+$money2;
//此時變數$money值為"123.1";
$formatted=sprintf("%01.2f",$money);
//此時變數$formatted值為"123.10"
?>
這個%01.2f是什么意思呢?
首先這個%符號是開始的意思,他寫在最前面表示指定格式要開始了。也就是"起始字符",直到出現"轉換字符"為止,就算格式終止。
然后跟在%符號后面的是0這個零是"填空字元"表示,如果位置空著就用0來填滿。
在0后面的是1這個1是規定,小數點前面的數字占位要有1位以上。
如果把1改成2如果$money的值為1.23,則$formatted的值將為01.23
因為,在小數點前面的數字只占了1位,按照上面所規定的格式,小數點前數字應該占2位,現在只有1位,所以,用0來填滿。
到目前,在%01后面的.2(點2)就很好理解了,它的意思是,規定,小數點后的數字,必需占2位。如果這時候,$money的值為1.234,則$formatted的值將為1.23.
為什么4不見了呢?因為,在小數點后面按照上面的規定,必需且僅能占2位。可是$money的值中,小數點占了3位,所以,4被去掉了,只剩下23.
最后,以f"轉換字符"結尾,其他轉換字符請自行參考上面的轉換字符列表。
關于對齊
如果在%起始符號后面加上-(負號)則,將會把數字以向右對齊的方式進行處理。
看下面實例:
$money=1.4;
$formatted=sprintf("%-02.2f",$money);
echo$formatted;
?>
這時候,$formatted將不會再是01.40而是1.400
到此,關于“php中的sprintf是什么”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。