php倒數計時出現-0的情況
2013年3月7日 09:31:30
今天有反饋,說倒數計時出現了-0天的情況,我看了看程式,臥槽,當時怎麼沒測試到
原因是PHP的邏輯判斷中 -0 > 0
貼出錯的程式碼
$starttime = 1362585600; //3.7凌晨 $nowtime = 1362618921;//3.7早上 $off = ceil(($starttime - $nowtime)/86400); //倒數計時 if ($off < 0) { $off = 0; } $b = $starttime - $nowtime; $c = $b/86400; $d = ceil($c); var_dump(array(`start-now`=>$b), array(`float_day`=>$c), array(`int_day`=>$d), array(`off`=>$off)); if (-0 < 0) { echo `-0 < 0`; } else { echo `-0 > 0`; }
輸出
array `start-now` => int -33321 array `float_day` => float -0.385659722222 array `int_day` => float -0 array `off` => float -0 -0 > 0
過程:
當開始時間和當前時間是同一天時,上邊的計算過程由於 -0 > 0 所以會出現 off = -0 的情況
改進:
$starttime = 1362585600; //3.7凌晨 $nowtime = 1362618921;//3.7早上 if (($starttime - $nowtime) < 0) { $off = 0; } else { $off = ceil(($starttime - $nowtime)/86400); }
相關文章
- php訪問目標網站時出現亂碼的情況PHP網站
- Flutter倒數計時/計時器的實現Flutter
- sql統計時間出現斷點的相關情況SQL斷點
- js實現活動倒數計時JS
- js實現指定時間倒數計時JS
- js倒數計時 實現傳送驗證碼倒數計時60sJS
- jquery實現60秒倒數計時jQuery
- 用宏實現PPT倒數計時
- Swift 5進入釋出倒數計時Swift
- JavaScript倒數計時JavaScript
- js——倒數計時JS
- JS倒數計時JS
- Jquery 實現頁面倒數計時的功能jQuery
- Android 實現計數或者倒數計時 計時器 用法DemoAndroid
- Android實現計時與倒數計時的幾種方法Android
- JavaScript 前端倒數計時糾偏實現JavaScript前端
- ReactiveCocoa 實現 按鈕倒數計時React
- js實現驗證碼倒數計時JS
- 爬蟲代理為什麼會出現超時的情況?爬蟲
- Js Jquery 實現的按鈕倒數計時整理JSjQuery
- Android 倒數計時的五種實現方式Android
- jQuery實現的按鈕可用倒數計時效果jQuery
- Kookjs 倒數計時JS
- 倒數計時34天
- SQL中除數為0處理情況演示SQL
- 直播平臺搭建,計時和倒數計時功能的分別實現
- js程式碼實現倒數計時秒殺的效果JS
- laravel 9 倒數計時了Laravel
- 小程式倒數計時深究
- canvas環形倒數計時Canvas
- 倒數計時門栓(CountDownLatch)CountDownLatch
- 直播小程式原始碼,vue實現時間倒數計時原始碼Vue
- 微信開發之小程式實現倒數計時
- Ionic Angular 實現驗證碼倒數計時功能Angular
- css3實現的賽道倒數計時奔跑效果CSSS3
- 掘金新品線上釋出,倒數計時還有 1 天
- win10 自帶倒數計時如何設定_win10開啟計時器倒數計時的方法Win10
- 線上直播系統原始碼,預設倒數計時,自定義輸入時間倒數計時原始碼