亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

PHP 時間無法正確轉換/保存

PHP 時間無法正確轉換/保存

PHP
慕村225694 2023-04-28 16:33:07
雖然沒有想法,但這里可能是一個簡單的!我有一個簡單的時間計算;$total_hours_work_cal = ($end_time_name - $start_time_name - $total_break_name);這確實帶回了正確的值,例如以下內容;開始時間 = 08:00結束時間 = 12:00返回的值為 4,我希望將其保存為 04:00,盡管它只是將其保存為 4,然后在我的數據庫中顯示為 00:00:04.000000。我需要它在數據庫中顯示為 04:00:00.000000 但我終究無法弄清楚。有任何想法嗎?編輯$startTime = new DateTime("$start_time_name");$endTime = new DateTime("$end_time_name");$endTime->sub(date_interval_create_from_date_string("$total_break_name"));$interval = date_diff($endTime, $startTime);echo $interval->format('%H:%I:%S'), PHP_EOL;對此的計算是;結束時間 = 10:00開始時間 = 05:00休息時間 = 00:30但它只返回 05:00 而不是預期的 04:30
查看完整描述

1 回答

?
躍然一笑

TA貢獻1826條經驗 獲得超6個贊

值 4 代表秒,而不是 4 小時。秒乘以 3600 得到小時。


但是您應該更好地使用 PHP 內部日期函數。


$startTime = new DateTime('08:00');

$endTime = new DateTime('12:00');

$endTime->sub(date_interval_create_from_date_string('10 minutes'));

$interval = date_diff($endTime, $startTime);

echo $interval->format('%H:%I:%S'), PHP_EOL;


$startTime = new DateTime('08:00');

$endTime = new DateTime('12:30');

$endTime->sub(date_interval_create_from_date_string('15 minutes'));

$interval = date_diff($endTime, $startTime);

echo $interval->format('%H:%I:%S'), PHP_EOL;

03:50:00

04:15:00


以休息時間作為時間字符串更新

我們用結束時間減去休息時間。我們從剩下的內容中減去開始時間并得到有效工作時間。


$startTime = new DateTime('08:00');

$endTime = new DateTime('12:30');

$breakTime = new DateTime('00:15');


$breakSubtracted = new DateTime($endTime->diff($breakTime)->format('%H:%I:%S'));

$workTime = date_diff($breakSubtracted, $startTime)->format('%H:%I:%S');

echo $workTime;

04:15:00


查看完整回答
反對 回復 2023-04-28
  • 1 回答
  • 0 關注
  • 120 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號