Hướng dẫn time set in php - thời gian đặt trong php

Đôi lúc các bạn xem các hướng dẫn về hàm lấy thời gian :date(format,timestamp).date(format,timestamp).

Nếu chưa biết hàm date(format,timestamp) bạn có thể xem ở link:http://congnghe5s.com/bai-viet/xu-ly-ngay-gio-trong-php.html.

Bạn thực hiện test lệnh trên máy và kết quả không khớp với time hiện tại. Đó là vì lí do thời gian hay timezone trên server bạn đã cài đặt khác vì thế để trả về đúng time bạn muốn bạn có thể dùng hàm:

Cú pháp:date_default_timezone_set ( string $timezone_identifier ).ú pháp:date_default_timezone_set ( string $timezone_identifier ).

tham số : $

date_default_timezone_set("Asia/Ho_Chi_Minh");
echo "VietNam: ".date("Y-m-d H:i:s"). "
"; date_default_timezone_set("Asia/Tokyo"); echo "Japan: ".date("Y-m-d H:i:s"); //Kết quả: VietNam: 2016-07-18 17:36:49 Japan: 2016-07-18 19:36:49
0http://php.net/manual/en/timezones.asia.php
date_default_timezone_set("Asia/Ho_Chi_Minh");
echo "VietNam: ".date("Y-m-d H:i:s"). "
"; date_default_timezone_set("Asia/Tokyo"); echo "Japan: ".date("Y-m-d H:i:s"); //Kết quả: VietNam: 2016-07-18 17:36:49 Japan: 2016-07-18 19:36:49
0http://php.net/manual/en/timezones.asia.php

date_default_timezone_set("Asia/Ho_Chi_Minh");
echo "VietNam: ".date("Y-m-d H:i:s"). "
"; date_default_timezone_set("Asia/Tokyo"); echo "Japan: ".date("Y-m-d H:i:s"); //Kết quả: VietNam: 2016-07-18 17:36:49 Japan: 2016-07-18 19:36:49
1

date_default_timezone_set('Asia/Ho_Chi_Minh').Asia/Ho_Chi_Minh').

Sau đó các bạn dùng hàm : echo date('d/m/Y - H:i:s');echo date('d/m/Y - H:i:s');

ra đúng kết quả time ở Việt Nam.đúng kết quả time ở Việt Nam.

Ví dụ:

date_default_timezone_set('Asia/Ho_Chi_Minh');

if (date_default_timezone_get()) {
    echo 'date_default_timezone_set: ' . date_default_timezone_get() . '
';
}
echo date('d/m/Y H:i:s');

Ví dụ trên có 1 hàm cũng khá quan trọng : date_default_timezone_get()  trả về timezone mặc định của server bạn đang chạy hoặc là đã được thiết lập thông qua date_default_timezone_set().date_default_timezone_get()  trả về timezone mặc định của server bạn đang chạy hoặc là đã được thiết lập thông qua date_default_timezone_set().

Qua bài viết hy vọng các bạn có thêm kiến thức khi xử lý ngày tháng trong PHP.

Mình không nói nhiều về  tầm quan trọng của việc sử dụng thời gian trong PHP, nó là điều bắt buộc rồi, liên quan đến quản lý cơ sở dữ liệu nữa. Trong bài này chỉ là giới thiệu các hàm liên quan đến thời gian trong PHP và cách sử dụng chúng:

1) date_default_timezone_set(“Asia/Ho_Chi_Minh”); xác định múi giờ cho khu vực, mình đang ở Châu Á và ở Việt Nam- Hồ Chí Minh nên sẽ có timezone là Asia/Ho_Chi_Minh, mỗi khu vực sẽ chênh lệch nhau thời gian nên các bạn phải chú ý khi website có liên quan đến nước ngoài. xác định múi giờ cho khu vực, mình đang ở Châu Á và ở Việt Nam- Hồ Chí Minh nên sẽ có timezone là Asia/Ho_Chi_Minh, mỗi khu vực sẽ chênh lệch nhau thời gian nên các bạn phải chú ý khi website có liên quan đến nước ngoài.

Ví dụ:

date_default_timezone_set("Asia/Ho_Chi_Minh");
echo "VietNam: ".date("Y-m-d H:i:s"). "
"; date_default_timezone_set("Asia/Tokyo"); echo "Japan: ".date("Y-m-d H:i:s"); //Kết quả: VietNam: 2016-07-18 17:36:49 Japan: 2016-07-18 19:36:49

Ví dụ trên có 1 hàm cũng khá quan trọng : date_default_timezone_get()  trả về timezone mặc định của server bạn đang chạy hoặc là đã được thiết lập thông qua date_default_timezone_set().

Qua bài viết hy vọng các bạn có thêm kiến thức khi xử lý ngày tháng trong PHP.

Mình không nói nhiều về  tầm quan trọng của việc sử dụng thời gian trong PHP, nó là điều bắt buộc rồi, liên quan đến quản lý cơ sở dữ liệu nữa. Trong bài này chỉ là giới thiệu các hàm liên quan đến thời gian trong PHP và cách sử dụng chúng: timestamp là một số nguyên biểu thị cho số giây tính từ thởi điểm UNIX Epoch ( 0h0p0s 1-1-1970)cho đến thời điểm hiện tại(số này chính là số giây)

1) date_default_timezone_set(“Asia/Ho_Chi_Minh”); xác định múi giờ cho khu vực, mình đang ở Châu Á và ở Việt Nam- Hồ Chí Minh nên sẽ có timezone là Asia/Ho_Chi_Minh, mỗi khu vực sẽ chênh lệch nhau thời gian nên các bạn phải chú ý khi website có liên quan đến nước ngoài. là cách đơn giản nhất để lấy thông tin về ngày giờ hiện tại. Nó không có tham số và trả ra kiểu timestamp

Như ta thấy trên với timezone là Việt Nam chúng ta sẽ có thời gian chậm hơn Nhật Bản là 2 giờ:

//trả ra có dạng như 

echo time(),'
'; //thời điểm hiện tại cộng thêm 5 phút là 1468839621 $after_5_min = time() + 5*60; echo '+ 5 min: ',$after_5_min,'
'; //Kết quả: + 5 min:1468839621

Về múi giờ các bạn có thể tham khảo thêm tại: http://php.net/manual/en/timezones.php : kiểm tra tính hợp lệ của một chuỗi ngày tháng năm với (PHP 4, PHP 5, PHP 7) trả về true nếu chuỗi hợp lệ, còn false là không hợp lệ

var_dump(checkdate(12, 31, 2015));

var_dump(checkdate(2, 29, 2015));

//kết quả

bool true

bool false

Định nghĩa: timestamp là một số nguyên biểu thị cho số giây tính từ thởi điểm UNIX Epoch ( 0h0p0s 1-1-1970)cho đến thời điểm hiện tại(số này chính là số giây) trả ra chuỗi theo định dạng mà chúng ta chỉ định trong $format, có thể chạy tốt trên (PHP 4, PHP 5, PHP 7)

  • 2) time():  là cách đơn giản nhất để lấy thông tin về ngày giờ hiện tại. Nó không có tham số và trả ra kiểu timestamp
  • Ví dụ: Lấy ngày giờ hiện tại là

Ví dụ:

echo date("Y-m-d"),'
'; //kết quả trả ra có dạng như 2016-07-19 echo date("d-m-Y"),'
'; //kết quả trả ra có dạng như 19-07-2016 echo date("d-m-Y H:i:s"),'
'; //kết quả trả ra có dạng như 19-07-2016 10:25:31

Ví dụ trên có 1 hàm cũng khá quan trọng : date_default_timezone_get()  trả về timezone mặc định của server bạn đang chạy hoặc là đã được thiết lập thông qua date_default_timezone_set().
5) mktime(): tạo ra một timestamp từ ngày giờ cụ thể, chạy tốt trên (PHP 4, PHP 5, PHP 7)

Qua bài viết hy vọng các bạn có thêm kiến thức khi xử lý ngày tháng trong PHP.

Mình không nói nhiều về  tầm quan trọng của việc sử dụng thời gian trong PHP, nó là điều bắt buộc rồi, liên quan đến quản lý cơ sở dữ liệu nữa. Trong bài này chỉ là giới thiệu các hàm liên quan đến thời gian trong PHP và cách sử dụng chúng:

//7h 30m 02s 18-05-2016

$time = mktime(7,30,2,5,18,2016);

//$time là timestamp, sử dụng nó trong hàm date()

echo date("Y-m-d H:i:s",$time),'
'; //công thêm 5 phút $time += 5*60; echo '5 min after: ',date("Y-m-d H:i:s",$time),'
'; // và công thêm 1 ngày echo ' 1 date after: ',date("Y-m-d H:i:s",($time+1*60*60*24));   //kết quả sẽ là 2016-05-18 07:30:02 5 min after: 2016-05-18 07:35:02 1 date after: 2016-05-19 07:35:02

1) date_default_timezone_set(“Asia/Ho_Chi_Minh”); xác định múi giờ cho khu vực, mình đang ở Châu Á và ở Việt Nam- Hồ Chí Minh nên sẽ có timezone là Asia/Ho_Chi_Minh, mỗi khu vực sẽ chênh lệch nhau thời gian nên các bạn phải chú ý khi website có liên quan đến nước ngoài. tạo ra timestamp từ một chuỗi, trường hợp này được sử dụng nhiều khi lấy dữ liệu từ MySQL với định dạng là datetime(PHP 4, PHP 5, PHP 7)

$time = strtotime("2016-10-21 10:11:10");
echo date("Y-m-d h:i:s",$time)."
"; echo "5 min after: ".date("Y-m-d h:i:s",$time+ 5*60); //kết quả 2016-10-21 10:11:10 5 min after: 2016-10-21 10:16:10

Như ta thấy trên với timezone là Việt Nam chúng ta sẽ có thời gian chậm hơn Nhật Bản là 2 giờ:

Về múi giờ các bạn có thể tham khảo thêm tại: http://php.net/manual/en/timezones.php

Định nghĩa: timestamp là một số nguyên biểu thị cho số giây tính từ thởi điểm UNIX Epoch ( 0h0p0s 1-1-1970)cho đến thời điểm hiện tại(số này chính là số giây) Lấy thông tin ngày giờ dạng mảng(PHP 4, PHP 5, PHP 7)

2) time():  là cách đơn giản nhất để lấy thông tin về ngày giờ hiện tại. Nó không có tham số và trả ra kiểu timestamp

Ví dụ: Lấy ngày giờ hiện tại là3) checkdate(int $month, int $day, int $year) : kiểm tra tính hợp lệ của một chuỗi ngày tháng năm với (PHP 4, PHP 5, PHP 7) trả về true nếu chuỗi hợp lệ, còn false là không hợp lệ4) date ( string $format [, int $timestamp = time() ] ): trả ra chuỗi theo định dạng mà chúng ta chỉ định trong $format, có thể chạy tốt trên (PHP 4, PHP 5, PHP 7)
format: định  dạng ngày tháng năm, giờ phút giâytimestamp(không bắt buộc) mặc định là hàm time()Chúng ta có thể sử dụng các ký tự để ngăn cách ngày tháng năm…như là “/” hoặc “:” hoặc “-” hoặc ” ”5) mktime(): tạo ra một timestamp từ ngày giờ cụ thể, chạy tốt trên (PHP 4, PHP 5, PHP 7)
mktime ([ int $hour = date(“H”) [, int $minute = date(“i”) [, int $second = date(“s”) [, int $month = date(“n”) [, int $day = date(“j”) [, int $year = date(“Y”) [, int $is_dst = -1 ]]]]]]] )Ví dụ: chúng ta thử  tạo một timestamp từ 7h 30m 02s  18-05-20166) strtotime(): tạo ra timestamp từ một chuỗi, trường hợp này được sử dụng nhiều khi lấy dữ liệu từ MySQL với định dạng là datetime(PHP 4, PHP 5, PHP 7)
Có thể sử dụng hàm này để cộng thời gian như các ví dụ sau:
//thời gian hiện tại
echo date("Y-m-d H:i:s"). "
"; //cộng 1 ngày echo date("Y-m-d H:i:s", strtotime("+1 day")) . "
"; //cộng 1 tuần echo date("Y-m-d H:i:s", strtotime("+1 week")). "
"; //đến thứ 4 tiếp theo echo date("Y-m-d H:i:s", strtotime("next Wednesday")). "
"; //thứ 2 vừa qua echo date("Y-m-d H:i:s", strtotime("last Monday"));
7) getdate(): Lấy thông tin ngày giờ dạng mảng(PHP 4, PHP 5, PHP 7)
getdate ([ int $timestamp = time() ] ): với các khóa như sauKhóaGiá trị
ví dụ“seconds” số giây
0 đến 59 “minutes” số phút
0 đến 59 “hours” 1999
số giờ 0 đến 23 “mday”
Ngày trong tháng 1 đến 31 “wday”
Ngày trong tuần 0 (Sunday) đến 6 (Saturday) “mon”
0 Tháng 1 đến 12

“year”

echo "
";
$today = getdate();
print_r($today);
echo "
"; //Kết quả Array ( [seconds] => 57 [minutes] => 48 [hours] => 14 [mday] => 19 [wday] => 2 [mon] => 7 [year] => 2016 [yday] => 200 [weekday] => Tuesday [month] => July [0] => 1468914537 )

Năm

“yday”

Time:

Ngày của năm 0 đến 365 “weekday”
Ngày trong tuần(dạng chữ) Sunday đến Saturday “month”
Tháng(dạng chữ) January đến December time()
timestamp,-2147483648 đến 2147483647. Chúng ta prin_r hàm này sẽ thấy đươc khóa và giá trịCòn tiếp….
Tổng hợp các ký tự tắt về định dạng ngày tháng năm, thời gian:Ký tựGIẢI THÍCH
Ví dụa buổi sáng và chiều, chữ thường
am hoặc pm A buổi sáng và chiều, chữ HOA
AM hoặc PM g Giờ theo kiểu 12 tiếng/ngày, không có số không với các số từ 1 → 9
1 → 12 G Giờ theo kiểu 12 tiếng/ngày, không có số không với các số từ 1 → 9

Day:

1 → 12 0 đến 365 “weekday”
Ngày trong tuần(dạng chữ) Sunday đến Saturday 01 đến 31
D Tên viết tắt của các thứ trong tuần Mon, Tue, Web, Thu, Fri, Sat, Sun
j Ngày trong tháng, không có kí tự 0 cho các ngày từ 1 → 9 1 đến 31
l Tên đầy đủ các thứ trong tuần Monday đến Sunday
w Số thứ tự của ngày trong tuần, bắt đầu đếm từ Sunday là ngày 0 Từ 0 → 6 (Sun → Sat)
z Số thứ tự của ngày trong năm Từ 0 → 365

Week: (W) tuần thứ mấy trong năm kiểu số

Month:

Ký tự GIẢI THÍCH Ví dụ
F Tên đầy đủ của tháng January → December
m Số thứ tự của tháng, có số 0 với các số từ 1 → 9 01 → 12
M Tên viết tắt của tháng Jan → Dec
sn Số thứ tự của tháng, không có số 0 với các số từ 1 → 9 1 → 12
t Số ngày trong 1 tháng 28 → 31

Year:

Ký tự GIẢI THÍCH Ví dụ
F Tên đầy đủ của tháng January → December
m Số thứ tự của tháng, có số 0 với các số từ 1 → 9 01 → 12

M

[thongbao]

  1. Tên viết tắt của tháng
  2. Jan → Dec

[/thongbao]

sn