Tôi phải tính chênh lệch thời gian ngày làm thế nào để thực hiện điều đó trong PHP. Tôi cần giờ, phút và giây chính xác. bất kỳ cơ thể có kịch bản cho rằng hãy cho tôi :-Pcách tính chênh lệch thời gian trong PHP
Trả lời
Chức năng datediff
tại addedbytes.com cho phép bạn chỉ là một cách dễ dàng :)
Tại sao lại sử dụng chức năng lỗi cũ như thế này khi lớp DateTime có chức năng này được tích hợp sẵn? – vascowhite
Kiểm tra này .. Điều này sẽ làm việc
<?php
function timeDiff($firstTime,$lastTime)
{
// convert to unix timestamps
$firstTime=strtotime($firstTime);
$lastTime=strtotime($lastTime);
// perform subtraction to get the difference (in seconds) between times
$timeDiff=$lastTime-$firstTime;
// return the difference
return $timeDiff;
}
//Usage :
echo timeDiff("2002-04-16 10:00:00","2002-03-16 18:56:32");
?>
Hi vimard cảm ơn bạn đã phát lại có giá trị. Thực ra tôi muốn hiển thị độ tuổi của các tệp như trong facebook hoặc orkut. chúng hiển thị thời gian, ngày, tuần, hiển thị dựa trên năm. –
để giải quyết vấn đề của bạn ... – Vimard
@Vimard anh ta muốn (4 năm trước) để thấy sự khác biệt trong ngày, tuần, năm không giây. –
Đối với một cái gì đó như thế, hãy sử dụng hàm int time() được tích hợp sẵn.
- Store giá trị của
time();
cái gì đó như1274467343
đó là số giây scince - Khi bao giờ cần truy xuất giá trị và gán nó vào
$erlierTime
. - Gán
time()
một lần nữa để sau này thời gian dừng bạn muốn, cho phép chỉ gọi nó$latterTime
Vì vậy, bây giờ bạn có cái gì đó như $erlierTime
và $latterTime
.
Không chỉ làm $latterTime - $erlierTime
để có được sự khác biệt trong vài giây và sau đó làm đơn vị của bạn để có được tê phút trôi qua, num giờ trôi qua, vv
Để cho tôi hay bất kỳ ai cung cấp cho bạn một hoàn thành kịch bản bạn sẽ cần phải cho chúng tôi biết môi trường của bạn là như thế nào và bạn đang làm việc với mysql, sqlite vv ... cũng sẽ cần phải biết làm thế nào mà bộ đếm thời gian được kích hoạt.
Điều này sẽ hoạt động, chỉ cần thay thế thời gian trong thời gian khác với thời gian tác vụ bắt đầu và thời gian hiện tại hoặc thời gian tác vụ đã kết thúc. Đối với một bộ đếm liên tục thời gian bắt đầu sẽ được lưu trữ trong một cơ sở dữ liệu, hoặc cho thời gian trôi qua cho một nhiệm vụ thời gian kết thúc sẽ cũng
function timeDiff($firstTime,$lastTime){
// convert to unix timestamps
$firstTime=strtotime($firstTime);
$lastTime=strtotime($lastTime);
// perform subtraction to get the difference (in seconds) between times
$timeDiff=$lastTime-$firstTime;
// return the difference
return $timeDiff;
}
//Usage :
$difference = timeDiff("2002-03-16 10:00:00",date("Y-m-d H:i:s"));
$years = abs(floor($difference/31536000));
$days = abs(floor(($difference-($years * 31536000))/86400));
$hours = abs(floor(($difference-($years * 31536000)-($days * 86400))/3600));
$mins = abs(floor(($difference-($years * 31536000)-($days * 86400)-($hours * 3600))/60));#floor($difference/60);
echo "<p>Time Passed: " . $years . " Years, " . $days . " Days, " . $hours . " Hours, " . $mins . " Minutes.</p>";
Bạn phải chuyển đổi ngày giờ bắt đầu và thời gian kết thúc của mình thông qua strtotime.
sau khi trừ thời gian bắt đầu từ thời gian kết thúc.
sau khi vượt qua sự khác biệt đó với định dạng ngày hoặc giờ bạn cần ...
để bạn sẽ nhận được sự khác biệt chính xác giữa hai ngày.
Sử dụng diff() method của PHP DateTime class như thế này: -
$lastWeek = new DateTime('last thursday');
$now = new DateTime();
var_dump($now->diff($lastWeek, true));
này sẽ cung cấp cho bạn một đối tượng DateInterval: -
object(DateInterval)[48]
public 'y' => int 0
public 'm' => int 0
public 'd' => int 2
public 'h' => int 11
public 'i' => int 34
public 's' => int 41
public 'invert' => int 0
public 'days' => int 2
Lấy các giá trị mà bạn muốn từ đó là tầm thường.
- 1. Tính chênh lệch thời gian trong Cocoa
- 2. tính chênh lệch thời gian trong R
- 3. Cách tính chênh lệch thời gian trong java?
- 4. Cách tính chênh lệch thời gian trong C++
- 5. Tính chênh lệch tháng trong Thời gian Joda
- 6. Tính toán chênh lệch thời gian tính bằng mili giây
- 7. Cách tính chênh lệch thời gian giữa tem thời gian unix?
- 8. Tính chênh lệch thời gian giữa hai lần javascript
- 9. Tính chênh lệch thời gian giữa hai hàng
- 10. Cách nhận chênh lệch thời gian trong iPhone
- 11. Cách nhận chênh lệch thời gian bằng mili giây
- 12. Cách tính chênh lệch ngày trong perl
- 13. Nhận chênh lệch thời gian giữa hai lần trong javascript
- 14. Nhận chênh lệch thời gian chính xác giữa hai NSDate?
- 15. Get Thời gian chênh lệch giữa nhóm các bản ghi
- 16. Lấy chênh lệch thời gian giữa hai giá trị
- 17. Tính khoảng cách (chênh lệch) OpenCV
- 18. PHP chênh lệch giữa \ r \ n \ n
- 19. Cách thành ngữ nhất để in chênh lệch thời gian trong Java?
- 20. tính chênh lệch giữa hai ngày
- 21. Vấn đề PHP 5.3 lạ với sự khác biệt tính toán chênh lệch ngày trong ngày
- 22. Làm thế nào để tính toán chênh lệch thời gian trong vài phút giữa hai ngày trong iOS
- 23. Finding và sự chênh lệch loại bỏ trong PHP
- 24. Mức chênh lệch UTC theo phút
- 25. chênh lệch ngày javascript
- 26. Lỗi chênh lệch ngày Javascript?
- 27. Đo chênh lệch thời gian giữa các thiết bị được nối mạng
- 28. sysdate chênh lệch
- 29. zsh hoàn chênh lệch
- 30. Tính thời gian đã trôi qua trong php
Điều này nghe có vẻ như bài tập về nhà –
Google là bạn của bạn. (Và đối với một ai đó như là một tuyên bố "php học viên" bạn dường như không mong muốn tìm hiểu ...) –
... làm thế nào để giải thích DST crossover? – symcbean