在接支付sdk的時候,第三方**處理時需要ip,並且ip的需求是:去掉點號,補零到每位址段3位, 如:192168000001
先看看我的實現:
1<?php
2$ip = explode ( '.', '192.168.1.12');
3$newip="";
4for($i = 0; $i
< count ( $ip ); $i ++)
7echo
$newip
;8 ?>
結果:192168001012
php 中有兩個函式,能夠實現數字補零格式化,str_pad(),sprintf()
現在分別對這兩個函式進行詳細分析一下:
1:str_pad
顧名思義,str_pad是針對字串來說的這個可以對指定的字串填補任何其它的字串
例如:str_pad(需要填補的字串,填補後的長度,填補字串,填補位置)
其中填補後的長度必須是個正整數,填補位置有三個選項:
左邊:str_pad_left,
右邊:str_pad_right,
兩端:str_pad_both
例如:echo str_pad(1,8,」0″,str_pad_left);
結果:00000001
echo str_pad(1,8,」0″,str_pad_right);
結果:10000000
echo str_pad(1,8,」0″,str_pad_both);
結果:00010000
在上邊的例子中值得注意的乙個細節是,如果填補的位數是個奇數,例如例三中填補了7個0,右邊優先。
2:sprintf
a:左邊補零
echo sprintf(」%05d」,1);
先說%05d的意思,用乙個5位數的數字格式化後邊的引數,如果不足5位就補零
執行結果是00005
b:小數點後補零
echo sprintf(」%01.3f」,1);
%01.3f的意思是說,用乙個小數點後最少三位不足三位補零,小數點前最少一位,不足一位補零的浮點數格式化後邊的引數
其執行結果是:1.000
關於補零的這兩種方法大家可以挑選著使用,其實各有優劣,sprintf能夠保證你不至於誤操作吧1補成1000000哈哈,str_pad可以保證你想補啥補啥。
再來乙個小例子:
1<?php
2function formatnum($arrayname)3
8return
$res;9
}10$arrayname = array(1,2,3,4,5,6,7,8,9,10,11,12,13);
11$result=formatnum($arrayname
);12
var_dump($result);
Python3 格式化數字 補零 數字補零
python中將數字格式化時,有些時候需要將數字格式化,為了顯示美觀,需要補零。今天在寫 時,看見別人的奇怪寫法,覺得有必要在這裡把python更好的寫法重寫一下。看到的別人的 for i in range 99 num str str i iflen num str 1 num str 0 str...
Android 完美實現手機號344格式化效果
在展示手機號碼的時候,會遇到手機號按照344格式效果,這種效果的實現遇到過兩次了,也踩過了許多的坑,在這裡記錄一下乙個完美實現這種效果的方式。輸入 插入 刪除等游標位置停留比較好的互動效果。特殊下標位置 private static final int phone index 3 3 private...
Struts2 格式化日期和數字
在src下建立package.properties配置檔案是固定寫法 number number.format.one number.format.two number.format.three number.format.four date date.format.all date.format....