I have date format like '25 May 2016 10:45:53:567'. I want to convert into the time stamp. strtotime function returns empty.
$date = '25 May 2016 10:45:53:567';
echo strtotime($date);
// returns empty
When I removed the milliseconds, it's working. $date = '25 May 2016 10:45:53';
echo strtotime($date);
// returns 1464153353
Please sort out my issue. Thanks in advance. asked May 28, 2016 at
10:02 TamilvananTamilvanan 6981 gold badge7 silver badges21 bronze badges 6 Use DateTime : $date = DateTime::createFromFormat('d M Y H:i:s:u', '25 May 2016 10:45:53:000');
echo $date->getTimestamp();
// 1464165953
// With microseconds
echo $date->getTimestamp().'.'.$date->format('u');
// 1464165953.000000
answered May 28, 2016 at 10:11 PytonPyton 1,2638 silver badges19 bronze badges 3 Split string: $date = '25 May 2016 10:45:53:001';
preg_match('/^(.+):(\d+)$/i', $date, $matches);
echo 'timestamp: ' . strtotime($matches[1]) . PHP_EOL;
echo 'milliseconds: ' . $matches[2] . PHP_EOL;
// timestamp: 1464162353
// milliseconds: 001
answered May 28, 2016 at 10:21 2 Use Datetime instead of date and strtotime. //using date and strtotime
$date = '25 May 2016 10:45:53:000';
echo "Using date and strtotime: ".date("Y-m-d H:i:s.u", strtotime($date));
echo "\n";\
//using DateTime
$date = new DateTime();
$date->createFromFormat('d M Y H:i:s.u', '25 May 2016 10:45:53:000');
echo "Using DateTime: ".$date->format("Y-m-d H:i:s.u");
// since you want timestamp
echo $date->getTimestamp();
// Output
// Using date and strtotime: 1969-12-31 16:00:00.000000
// Using DateTime: 2016-05-28 03:25:22.000000
Example answered May 28, 2016 at 10:24 I want to get a difference between two dates in Php in milliseconds, How can I do this? I tried with the following code but not working for me, I am getting the result in seconds, how can I convert to milliseconds? Here is my code. $expiration_time=$row['time'];
$date = date('Y-m-d H:i:s');
$date1 = strtotime($expiration_time);
$date2 = strtotime($date);
echo $diff = abs($date2 - $date1);
Waqas Ahmad 4161 gold badge3 silver
badges16 bronze badges asked Apr 10, 2019 at 12:17 1 $milliseconds = strtotime($date) * 1000;
Just multiply it by 1000. Although I do prefer to use: $milliseconds = round(microtime(true) * 1000);
answered Apr 10, 2019 at 12:20 LulceltechLulceltech 1,6529 silver badges21 bronze badges 2 You can use createFromFormat method of DateTime or, better, DateTimeImmutable while passing timezone as third parameter. This way you do not need to rely on default timezone, which is never a good idea $datetime = DateTimeImmutable::createFromFormat('Y-m-d H:i', '2016-03-22 14:30', new DateTimeZone('Australia/Sydney'));
echo $datetime->getTimestamp();
echo $datetime->format(DateTime::ISO8601);
You
can also convert it to another timezone, note that it produced new DateTimeImmutable and original left untouched: echo $utcTzDatetime = $date->setTimezone(new DateTimeZone('UTC'));
echo $utcTzDatetime->format(DateTime::ISO8601);
echo $datetime->format(DateTime::ISO8601);
Upd: If format is not fixed, you can let DateTime guess it: new DateTimeImmutable($time, new DateTimeZone('Australia/Sydney'));
But be aware that if $time string contains timezone or offset, eg '2016-03-22T14:30-0500', it will have priority over timezone parameter and will result in different timestamp! Hàm microtime() sẽ lấy timestamp của thời điểm hiện tại bao gồm cả microseconds.
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức. Cú phápCú pháp: microtime( $is_float); Trong đó: $is_float là tham số. Nếu mang giá trị TRUE hàm sẽ trả về số thuộc kiểu float, nếu không truyền hoặc mang giá trị FALSE, hàm sẽ chả về chuỗi theo dạng" microseconds second".
Kết quả trả vềHàm sẽ trả về một chuỗi theo
dạng "microseconds second" hoặc trả về số thuộc kiểu float tùy thuộc vào tham số truyền vào. Bài viết này được đăng tại [free tuts .net] Ví dụVí dụ đơn giản về hàm microtime() : Code echo microtime() . "<br />";
echo microtime(true); Kết quả 0.64058100 1493918735
1493918735.6406 Tham khảo: php.net 26/07/2021 03:01 Ngày tháng là một phần của cuộc sống hàng ngày, do vậy việc xử lý ngày tháng cực kỳ quan trọng khi bạn xử lý các bài viết và đăng
tải lên website. Với PHP, ngôn ngữ lập trình này cung cấp các công cụ mạnh mẽ để tính toán ngày tháng giúp cho việc thao tác ngày tháng trở nên dễ dàng hơn. Trong bài viết này, cùng T3H tìm hiểu về Date, Time trong PHP. Định dạng ngày tháng trong PHP với hàm date () - Date time trong PHPHàm date dùng để chuyển đổi thời gian theo format mà lập trình viên chỉ định mong muốn. Cú
pháp: date(format, timestamp); Trong đó: - format: định dạng ngày tháng năm, giờ phút giây.
- timestamp(không bắt buộc) mặc định là hàm time() (chính là thời gian hiện tại).
Chuyển đổi Timestamp với hàm getdate() Hàm getdate () tùy ý chấp nhận một timestamp và trả về một mảng liên kết chứa thông tin về ngày tháng. Nếu bạn bỏ qua Time Stamp, nó sẽ hoạt động
với thời gian thực được trả về theo hàm date(). Bảng sau liệt kê các phần tử có trong mảng được trả về bởi getdate ().
STT
| Mô tả
| Ví dụ
| 1
| seconds
| 20
| 2
| minutes
| 29
| 3
| hours
| 22
| 4
| mdays
| 11
| 5
| wday
| 4
| 6
| mon
| 7
| 7
| year
| 1997
| 8
| yday
| 19
| 9
| weekday
| Thursday
| 10
| month
| January
| 11
| 0
| 948370048
|
Bây giờ bạn có toàn quyền kiểm soát ngày và giờ. Bạn có thể định dạng ngày và giờ này ở bất kỳ định dạng nào bạn muốn. Ví dụ: <?php
$date_array = getdate();
foreach ( $date_array as $key => $val ){
print "$key = $val<br />";
}
$formated_date = "Today's date: ";
$formated_date .= $date_array['mday'] . "/";
$formated_date .= $date_array['mon'] . "/";
$formated_date .= $date_array['year'];
print $formated_date;
?>
Output seconds = 10
minutes = 29
hours = 9
mday = 5
wday = 1
mon = 12
year = 2016
yday = 339
weekday = Monday
month = December
0 = 1480930150
Today's date: 5/12/2016
>>> Đọc thêm: Hằng số trong PHP - Tìm hiểu nhanh về hằng số trong PHP Chuyển đổi Timestamp với hàm date() - Date time trong PHP Hàm date () trả về một chuỗi được định dạng biểu thị một ngày. Bạn có thể thực hiện
một lượng lớn quyền kiểm soát đối với định dạng mà date () trả về với một đối số chuỗi mà bạn phải chuyển cho nó. date(format,timestamp)
Date() tùy chọn chấp nhận một dấu thời gian nếu bị bỏ qua thì ngày và giờ hiện tại sẽ được sử dụng. Bất kỳ dữ liệu nào khác mà bạn đưa vào chuỗi định dạng được chuyển đến date () sẽ được bao gồm trong giá trị trả về. Bảng sau liệt kê các mã mà một chuỗi định dạng có thể chứa:
STT
| Mô tả
| Ví dụ
| 1
| a ‘am’ hoặc ‘pm’ viết thường
| om
| 2
| A ‘AM’ hoặc ‘PM’ viết hoa
| PM
| 3
| d Ngày trong tháng
| 20
| 4
| D ngày trong tuần
| Thu
| 5
| F Tên tháng
| Tháng Giêng
| 6
| h Trả về giờ trong ngày kiểu 12h
| 12
| 7
| H Trả về giờ trong ngày kiểu 24h
| 22
| 8
| g
| 22
| 9
| G
| 12
| 10
| i
| 22
| 11
| j Trả về ngày trong tháng, nhưng nếu ngày<10 sẽ không hiển thị số 0.
| 23
| 12
| l Trả về đầy đủ thứ trong tuần (tiếng anh)
| Thursday
| 13
| L
| 1
| 14
| m Trả về tháng trong năm (bằng số từ 1 đến 12).
| 1
| 15
| M Trả về tháng trong năm nhưng bằng tiếng anh viết tắt.
| Jan
| 16
| r Ngày được định dạng
| Thu, 21 Dec 2000 16:01:07 +0200
| 17
| n Tháng trong năm
| 2
| 18
| s Trả về số giây trong phút.
| 20
| 19
| U Time stamp
| 948372444
| 20
| y Trả về 2 số cuối cùng của năm.
| 06
| 21
| Y trả về đầy đủ 4 số của năm.
| 2006
| 22
| z Ngày trong năm (từ 0-365)
| 206
| 23
| Z trả về số ngày trong năm (Ngày trong năm bắt đầu từ 0 -> 365)
| +5
|
Ví dụ: <?php
print date("m/d/y G.i:s<br>", time());
echo "<br>";
print "Today is ";
print date("j of F Y, \a\\t g.i a", time());
?>
Kết quả nhận được: 12/05/16 9:29:47
Today is 5 2016f December 2016 at 9:29 am
>>> Tham khảo: Khóa học lập trình PHP Kết luận: Bài viết trên đã chỉ ra một số phương pháp để xử lý ngày tháng, Date Time trong PHP, tùy vào từng trường hợp, bạn có thể áp dụng để xử lý ngày tháng một cách khác nhau. Hy vọng bài viết trên hữu ích với bạn. Tìm hiểu thêm về PHP và các ngôn ngữ lập trình khác qua các khóa học lập trình tại
Viện công nghệ thông tin T3H bạn nhé!
|