最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

php 格式化數(shù)字的時候注意數(shù)字的范圍

 更新時間:2010年04月13日 15:45:43   作者:  
因為 數(shù)據(jù)庫中 id 可能會很大 如果使用%d的話,就可能出現(xiàn)因為超出了范圍,而到不到正確的結果。所以,個人建議 對id進行格式化的時候 使用%.0f 比 %d 要 好的多。
構造sql語句是 比起來
復制代碼 代碼如下:

$sql = 'SELECT *
FROM sdb_comments
WHERE goods_id = '.intval($goods_id).'
AND for_comment_id IS NULL
AND object_type = ".$item."
AND disabled="false"
AND display = "true"';

我更喜歡這樣做:
復制代碼 代碼如下:

$sql = sprintf('SELECT *
FROM sdb_comments
WHERE goods_id = %.0f
AND for_comment_id IS NULL
AND object_type = "%s"
AND disabled="false"
AND display = "true"', (float)$goods_id, $item);

這個語句還算 簡單,如果是更復雜的話,用拼接字符串的話,那簡直就是一個噩夢。

使用第二種方式的話,比較方便.但是一個小問題:在格式化數(shù)字的時候就需要注意其取值范圍。數(shù)字操作了取值反問。那么最后返回的sql 也不是我們需要的。

我今天做了個總結:

%d: 2^31~2^31-1(-2147483648~2147483647) (將int轉(zhuǎn)化為有符號十進制)

%b:二進制(將int類型的轉(zhuǎn)化為二進制)

%c:字符(將int類型轉(zhuǎn)化為字符)

%u: 2^32-1(0 ~ 4294967295) (將int轉(zhuǎn)化為有符號十進制)

%f: -2^128-2^128(-3.4E38 ~+3.4E38)(將float轉(zhuǎn)化為float) 本地化

%F: -2^128-2^128(-3.4E38 ~+3.4E38)(將float轉(zhuǎn)化為float) 非本地化

%o (將int轉(zhuǎn)化為八進制)

%s:字符串

%x:將int轉(zhuǎn)化為小寫字母的十六進制

%X:將int轉(zhuǎn)化為大寫字母的十六進制

因為 數(shù)據(jù)庫中 id 可能會很大 如果使用%d的話,就可能出現(xiàn)因為超出了范圍,而到不到正確的結果。所以,個人建議 對id進行格式化的時候 使用%.0f 比 %d 要 好的多。

相關文章

最新評論

渝北区| 宣化县| 罗田县| 莱阳市| 兰考县| 环江| 建瓯市| 苏尼特右旗| 利辛县| 稷山县| 揭东县| 珲春市| 富源县| 泾源县| 禄劝| 吴桥县| 酉阳| 保山市| 博罗县| 滨州市| 洛阳市| 依安县| 布尔津县| 嘉善县| 宽城| 湄潭县| 汝州市| 陈巴尔虎旗| 正阳县| 平乡县| 蓝山县| 深水埗区| 志丹县| 崇州市| 肥城市| 无极县| 北碚区| 新营市| 新昌县| 徐闻县| 资中县|