根據(jù)經(jīng)驗(yàn),PHP里沒有長整型,默認(rèn)就是32位的INT,超出范圍就是FLOAT。所以這里$long是INT32
創(chuàng)新互聯(lián)建站主要從事成都網(wǎng)站建設(shè)、網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)羅源,十多年網(wǎng)站建設(shè)經(jīng)驗(yàn),價格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):028-86922220
7.53160e+8叫做科學(xué)計(jì)數(shù)法,自己查著學(xué)習(xí)一下,這是常識。表示7.53160乘以10的8次方。
%%作為printf的參數(shù),就表示輸出一個%,而如果直接一個%表達(dá)的是別的意思,例如%d表示按整數(shù)形式輸出printf的下一個參數(shù)
e是英文字母?!?e”是一種printf的參數(shù),表示用科學(xué)計(jì)數(shù)法輸出printf的下一個參數(shù)。
“%和0和一個數(shù)和小數(shù)點(diǎn)和另一個數(shù)和f”是一種printf的參數(shù),表示用浮點(diǎn)形式輸出下一個參數(shù)。組合很多。如果全部帶齊了,0表示用數(shù)字0來填補(bǔ)空白,小數(shù)點(diǎn)前的數(shù)表示一個顯示幾位數(shù)(多了不管少了拿上一句話里提到的0來填補(bǔ)),小數(shù)點(diǎn)后的數(shù)表示顯示出來的數(shù)里小數(shù)點(diǎn)后有幾位數(shù)(多了不管少了拿上一句話里提到的0來填補(bǔ))這下回答了兩個問題
8是憑空想出來的,你可以用別的數(shù),答案不同而已。
最后幾個完全是錯的。錯誤1:$在PHP里的雙引號里,會代表轉(zhuǎn)義,也就是說,因?yàn)?在雙引號里,所以參數(shù)在進(jìn)入printf之前,參數(shù)里的$已經(jīng)被處理沒了(是的,雙引號里的東西在PHP里會被預(yù)處理一下,可以把雙引號理解為一個函數(shù),而單引號就不會處理$號)。錯誤2:對于printf,%才是控制格式輸出的符號,$號只會被原樣輸出。所以為了得到答案,程序末尾必須是這樣的:
printf("[%s]br/",$str);
printf("[%8s]br/",$str);
printf("[%-8s]br/",$str);
printf("[%08s]br/",$str);
printf("[%'\$8s]br/",$str);
那么,兩端的“【”和“】”表示這兩個字符,原樣顯示。中間是“%s”帶各種參數(shù)。第一個,不帶別的參數(shù),就顯示出來。后面幾個帶8的,把后面的$str顯示為至少8位。如果沒有別的參數(shù),就用空格補(bǔ)足,左邊補(bǔ)右對齊。帶負(fù)號的,右邊補(bǔ)左對齊。帶0或者空格表示用這兩個字符補(bǔ)足,而其他補(bǔ)足字符必須用“'”符號當(dāng)前綴。所以%'\$8s首先被雙引號預(yù)處理使得\$變成$,所以printf收到的參數(shù)是%'$8s,然后printf分析到了%s以及參數(shù)'$和8就認(rèn)為是在$str前面補(bǔ)足8位,用$這個字符來補(bǔ)。
總的來說,printf里,%表示控制輸出格式。s就是一個英文字母,%s表示按照String的方式輸出。如果用雙引號把參數(shù)傳給printf還要注意“$”和“\”被雙引號轉(zhuǎn)義。
phpstorm格式化代碼的快捷鍵:Ctrl + Alt + L
設(shè)置代碼樣式:File - Settings - Code Style -PHP
(根據(jù)個人php代碼規(guī)范和個人喜好設(shè)置 PHP 等代碼的樣式結(jié)構(gòu)。)
phpstorm可以設(shè)置:1、等號對齊;2、中括號顯示方式;3、空格 顯示方式等...
一、phpstorm格式化代碼代碼示范:
二、對 phpstorm 設(shè)置好后,可以把設(shè)置信息導(dǎo)出,以便后續(xù)安裝后再次使用。
導(dǎo)出設(shè)置方法:File - Export Settings
導(dǎo)入設(shè)置方法:File - Import Settings
程序代碼:
?php
echo?fmt_num(2533120000)."br\n";
echo?fmt_num(123456789?)."br\n";
function?fmt_num($n){
$s=($n?%?1000).'銅';$n=floor($n/1000);
$s=($n?%?1000).'銀'.$s;$n=floor($n/1000);
$s=($n?%?100).'金'.$s;$n=floor($n/100);
$s=($n?%?100).'鉆'.$s;$n=floor($n/100);
return?$s;
}
?
運(yùn)行示例:
E:\TEMP\文件\expa.php
25鉆33金120銀-296銅br
1鉆23金456銀789銅br
代碼能看懂吧,我定義了一個函數(shù),你可以根據(jù)需要修改函數(shù)的返回格式。
round函數(shù)四舍五入,ceil全入,floor全舍,你現(xiàn)在需要的是floor,例如: echo floor(3.9999*100)/100;//輸出3.99
語法: string sprintf(string format, mixed [args]...);
返回值: 字符串
函數(shù)種類: 資料處理
PHP函數(shù)sprintf()用來將字符串格式化。參數(shù) format 是轉(zhuǎn)換的格式,以百分比符號 % 開始到轉(zhuǎn)換字符為止。而在轉(zhuǎn)換的格式間依序包括了
填空字符。0 的話表示空格填 0;空格是默認(rèn)值,表示空格就放著。
對齊方式。默認(rèn)值為向右對齊,負(fù)號表向左對齊。
字段寬度。為最小寬度。
精確度。指在小數(shù)點(diǎn)后的浮點(diǎn)數(shù)位數(shù)。
PHP函數(shù)sprintf()的類型,見下表 % 印出百分比符號,不轉(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)位。
PHP函數(shù)sprintf()的使用范例
? $money1 = 68.75; $money2 = 54.35; $money = $money1 + $money2; // 此時變量 $money 值為 "123.1"; $formatted = sprintf ("%01.2f", $money); // 此時變量 $ formatted 值為 "123.10" ?
把PHP數(shù)組用 $json = json_decode($dellieb);
然后JS就可以正常用PHP的這個數(shù)組了,JS 不需要格式化就可以直接用 json
var addbgm = ?php echo $json?;
alert(addbgm[0]);