如何在 PHP 中获取当前的日期和时间?

Which PHP function can return the current date/time?

转载于:https://stackoverflow.com/questions/470617/how-to-get-the-current-date-and-time-in-php

weixin_41568208
北城已荒凉 -1 because "this question does not show any research effort" (source - the tooltip when you hover over the downvote button). SO shouldn't be your immediate go-to whenever you have a question, you should at least RTFM first, or turn to Google (other search engines are available ;)).
大约一年之前 回复
csdnceshi62
"幸运的战士" TLDR; $date = date('m/d/Y h:i:s a', time());
一年多之前 回复

30个回答

// Simply:
$date = date('Y-m-d H:i:s');

// Or:
$date = date('Y/m/d H:i:s');

// This would return the date in the following formats respectively:
$date = '2012-03-06 17:33:07';
// Or
$date = '2012/03/06 17:33:07';

/** 
 * This time is based on the default server time zone.
 * If you want the date in a different time zone,
 * say if you come from Nairobi, Kenya like I do, you can set
 * the time zone to Nairobi as shown below.
 */

date_default_timezone_set('Africa/Nairobi');

// Then call the date functions
$date = date('Y-m-d H:i:s');
// Or
$date = date('Y/m/d H:i:s');

// date_default_timezone_set() function is however
// supported by PHP version 5.1.0 or above.

For a time-zone reference, see List of Supported Timezones.

csdnceshi68
local-host Thank you for the link of supported timezones, i was about to google it :)
接近 2 年之前 回复
csdnceshi51
旧行李 This is a much more straight-forward answer than the top one. Thanks!
接近 4 年之前 回复

The time would go by your server time. An easy workaround for this is to manually set the timezone by using date_default_timezone_set before the date() or time() functions are called to.

I'm in Melbourne, Australia so I have something like this:

date_default_timezone_set('Australia/Melbourne');

Or another example is LA - US:

date_default_timezone_set('America/Los_Angeles');

You can also see what timezone the server is currently in via:

date_default_timezone_get();

So something like:

$timezone = date_default_timezone_get();
echo "The current server timezone is: " . $timezone;

So the short answer for your question would be:

// Change the line below to your timezone!
date_default_timezone_set('Australia/Melbourne');
$date = date('m/d/Y h:i:s a', time());

Then all the times would be to the timezone you just set :)

csdnceshi69
YaoRaoLov after all you want to save date/time in database, if that is what needed; why not just use the MySQL commands to deal with date/time. MySQL provides considerable flexibility in how dates and times are formatted. take this example: INSERT INTO orders (order_item, order_date, order_delivery) VALUES ('iPhone 8Gb', NOW(), DATE_ADD(NOW(), INTERVAL 14 DAY));. See Dates and Times in MySQL
接近 2 年之前 回复
csdnceshi68
local-host A simpler and more correct answer would not be to omit potentially important and related information, but instead to answer the question, as you suggest, but then provide additional information on timezones beneath it. There's no need to omit potentially crucial information just because it wasn't asked for.
4 年多之前 回复
csdnceshi60
℡Wang Yan You can get all the time zone from here Time Zone
4 年多之前 回复
csdnceshi70
笑故挽风 I actually appreciated the additional timezone information. It saved me a second search.
接近 5 年之前 回复
csdnceshi58
Didn"t forge OP never asked about timezone. A simpler and more correct answer would simply show server time.
5 年多之前 回复
csdnceshi55
~Onlooker America/Los_Angeles
大约 6 年之前 回复
csdnceshi74
7*4 Which one is PST?
大约 6 年之前 回复
weixin_41568184
叼花硬汉 Thanks! I was wondering how to change the time zone on the date() function :)
接近 8 年之前 回复
csdnceshi52
妄徒之命 The call to time() is redundant, date() will automatically use the current time.
10 年多之前 回复

Since PHP 5.2.0 you can do it using OOP and DateTime() as well (of course if you prefer OOP):

$now = new DateTime();
echo $now->format('Y-m-d H:i:s');    // MySQL datetime format
echo $now->getTimestamp();           // Unix Timestamp -- Since PHP 5.3

And to specify the timezone:

$now = new DateTime(null, new DateTimeZone('America/New_York'));
$now->setTimezone(new DateTimeZone('Europe/London'));    // Another way
echo $now->getTimezone();

PHP's date function can do this job

date()

Description :

string date ( string $format [, int $timestamp = time() ] )

Returns a string formatted according to the given format string using the given integer timestamp or the current time if no timestamp is given.

Examples :

$today = date("F j, Y, g:i a");                 // March 10, 2001, 5:16 pm
$today = date("m.d.y");                         // 03.10.01
$today = date("j, n, Y");                       // 10, 3, 2001
$today = date("Ymd");                           // 20010310
$today = date('h-i-s, j-m-y, it is w Day');     // 05-16-18, 10-03-01, 1631 1618 6 Satpm01
$today = date('\i\t \i\s \t\h\e jS \d\a\y.');   // it is the 10th day.
$today = date("D M j G:i:s T Y");               // Sat Mar 10 17:16:18 MST 2001
$today = date('H:m:s \m \i\s\ \m\o\n\t\h');     // 17:03:18 m is month
$today = date("H:i:s");                         // 17:16:18
$today = date("Y-m-d H:i:s");                   // 2001-03-10 17:16:18 (the MySQL DATETIME format)

You can use both the $_SERVER['REQUEST_TIME'] variable or the **time()**function. Both of these return a Unix timestamp.

Most of the time these two solutions will yield the exact same Unix Timestamp. The difference between these is that $_SERVER['REQUEST_TIME'] returns the time stamp of the most recent server request and time() returns the current time. This may create minor differences in accuracy depending on your application, but for most cases both of these solutions should suffice.

Based on your example code above, you are going to want to format this information once you obtain the Unix Timestamp. An unformatted Unix timestamp looks like this...

Unix Timestamp: 1232659628

So in order to get something that will work, you can use the date() function to format it.

A good reference for ways to use the date() function is located in the PHP Manual Pages, here...

http://us.php.net/date

As an example, the following code returns a date that looks like this -

01/22/2009 04:35:00 pm

echo date("m/d/Y h:i:s a", time());
csdnceshi61
derek5. Best answer hands down. You even add how to get from UNIX timestamp to normal person date which is greatly appreciated
大约 2 年之前 回复
weixin_41568131
10.24 How does different web servers handle $_SERVER['REQUEST_TIME'] ?
4 年多之前 回复

That's May Help you.

Here are some characters that are commonly used for times:

  1. h - 12-hour format of an hour with leading zeros (01 to 12)
  2. i - Minutes with leading zeros (00 to 59)
  3. s - Seconds with leading zeros (00 to 59)
  4. a - Lowercase Ante meridiem and Post meridiem (am or pm)

Get Your Time Zone

<?php
date_default_timezone_set("America/New_York");
echo "The time is " . date("h:i:sa");
?>

check this out (optional)

<?php
    $d=mktime(11, 14, 54, 8, 12, 2014);
    echo "Created date is " . date("Y-m-d h:i:sa", $d);
    ?>

for Date

<?php
    echo "Today is " . date("Y/m/d") . ;
    echo "Today is " . date("Y.m.d") . ;
    echo "Today is " . date("Y-m-d") . ;
    echo "Today is " . date("l");
?>

Here are some characters that are commonly used for dates:

  1. d - Represents the day of the month (01 to 31)
  2. m - Represents a month (01 to 12)
  3. Y - Represents a year (in four digits)
  4. l (lowercase 'L') - Represents the day of the week

Source-W3-Schools

If you want to get Date like 12-3-2016 separately each day,month and year values, then copy-paste this code

$day=date("d");
$month=date("m");
$year=date("y");
print "date".$day."-".$month."-".$year;
 $date = new DateTime('now', new DateTimeZone('Asia/Kolkata'));
 echo $date->format('d-m-Y H:i:s');

Update

 //Also get am/pm in datetime:
 echo $date->format('d-m-Y H:i:s a'); // output 30-12-2013 10:16:15 am

For the date format, PHP date() Function is useful.

Set your time zone:

date_default_timezone_set('Asia/Calcutta');

Then call the date functions

$date = date('Y-m-d H:i:s');

Another simple way to take timestamp of current date and time use mktime() function

$now = mktime(); //return timestamp of current time

then you can convert this to another date format:

//// Prints something like: Thursday 26th of January 2017 01:12:36 PM
echo date('l jS \of F Y h:i:s A',$now);

more date formats here: http://php.net/manual/en/function.date.php

共30条数据 1 3 尾页
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
在perl中如何获取当前的日期和时间?
rtrn希望能给出一个例子参考。
如何在Delphi中获得当前系统日期和时间?
如何在Delphi中获得当前系统日期和时间?rn比如让一个edit 来获得。rnrn又如何让DateTimePicker1来同时显示日期和时间呢?rnrn是否可以让MonthCalendar1来显示时间和日期?rnrn谢谢!
如何在网页中动态显示当前的系统日期和时间?
如何在网页中动态显示当前的系统日期和时间?哪为大侠帮我写一下完整的代码?rn
php 获取当前毫秒时间
list($t1, $t2) = explode(' ', microtime()); echo (float)sprintf('%.0f', (floatval($t1) + floatval($t2)) * 1000); eg: //开始时间 list($t1, $t2) = explode(' ', microtime()); $st = (float)sp
PHP 获取格式化的日期和时间
       
php中的日期与时间
php中的日期与时间 UNIX时间戳:以1970年1月1日0时为起点,单位为秒的32位数字格式数据。范围在(1902~2038)        1.将日期和时间转为时间戳           strtotime() 将字符串形式的时间转为时间戳  time()      获得当前时间的时间戳  mktime()    将日期时间转为时间戳      2.格式化时间输出
PHP中的日期和时间
UNIX时间戳UNIX时间戳是大多数计算机中保存和表示日期和时间的一种标准格式。UNIX时间戳以为32位置的证书表示格林威治标准时间。它是从1970年1月1日开始,到当前时间所经过的秒数。因为UNIX是一个32位的整数,所以处理1902年以前或2038年后的日期会出现一些问题。而Windows系统的时间戳不能为负数,这点需要尤其注意。在 PHP中获取日期和时间时间time()函数与mktime()函
PHP中的时间和日期
介绍了php中的时间和日期函数,最后做了一个小demo——小日历给大家做参考。
急!如何在php中获得当前的时间呀!
如何在php中获得当前的时间呀?!rn我的数据表中有date字段,类型为datetime rn我想发表文章时,把发表的时间也插到date字段中去。rn那么该怎么获得发表的时间呀?!rn谢谢!!!
如何在JAVA中获取当前的动态时间
各位老兄,我在做一个JLabel是想在上面获取当前动态时间,可是做不了,获取的时间不是动态更新的.请问各位老兄怎么做啊
如何在C#中获取当前动态时间,急
请问如何在C#中获取当前动态时间.谢谢,急!!!!
如何在c#中 获得当前的时间
我想获得当前时间 不知道用system.Datetime 如何使用,还有如何从两个时间中得到相差的天数 有现成的函数么?
如何在PowerPoint 中显示当前的时间?
不是日期。
如何在AppWidgetProvider中获取当前appWidgetId
如何在My AppWidgetProvider中获取当前appWidgetId ?
如何在自定义函数中获取当前的系统时间?
在sql server自定义函数当中是无法使用getdate()得到当然的系统时间,请问如何得到当前的系统时间?
如何在JSP页面中获取当前系统时间
请教:如何在JSP页面中获取当前系统时间,只需要获取年,月,日就可以了rnrn谢谢
如何在程序中获取ORACLE数据库的日期。
-
如何在输入日期时自动显示当前的时间
在线等啊.
javaScript获取当前16位时间及日期
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>显示16位系统时间</title> </head> <body> 当前时间:<span id="showtimes"></span> <script type="text/javascript" >
python:如何获取当前的日期和时间
# coding=utf-8 import datetime import time print ("格式参数:") print (" %a 星期几的简写") print (" %A 星期几的全称") print (" %b 月分的简写") print (" %B 月份的全称") print (" %c 标准的日期的时间串") print (" %C 年份的后两位数字") print
如何获取当前系统日期和时间呀。
我想编一个一开机就能获得系统的开机时间和当前日期的C程序,又想知道调用这时间和当前日期的函数的用法请高手指点。感激流涕。
如何在statusbar里显示当前的日期、时间等
如题
获取当前的日期、时间并格式化输出
获取当前的日期、时间并格式化输出,很不错的VC++代码,有兴趣可以看一下~~
Android获取当前系统日期和时间
以前没有写博客的习惯,好多用过知识长时间不用的容易忘记,以后我会把项目中用到的知识和学到炫酷的技能一点一点写到我的博客里。刚开始写就从简单的开始呗,以后做项目的时候用到的话,就可以直接查看自己的博客。希望初学的伙伴们尽早养成写博客的习惯,废话不多说上代码。 第一种方法 SimpleDateFormat simpleDateFormat = new SimpleDateFormat(&amp;quot;y...
《Qt5+QDate和QTime获取当前系统日期和时间》
QDate对象包含日历日期,即年,月,日的数字。它可以从系统时钟读取当前日期,提供了比较日期和操作日期的功能。例如,可以在日期中添加和减去天,月和年。QTime对象包含一个时钟时间,即自午夜的小时,分钟,秒和毫秒数。它可以从系统时钟读取当前时间并测量经过时间的跨度,它提供了通过添加毫秒数来比较时间和操作时间的功能。   QDate简单示例 #include &quot;mainwindow.h&quot;...
如何在flash中获取服务器时间
我的一个asp+flash视频签到程序,原设计为把flash嵌入在asp中,在flash中进行拍照后点击保存,则发送到另一asp保存页面,然后在asp获取当前系统时间,此时间作为签到时间与规定时间进行比对,若迟与规定时间,则判断此人迟到。但实际应用时,当许多人签到时,因服务器cup占用率到100%,所以页面运行十分缓慢,从而出现延迟现象,例如某人本在8点29分20秒点击保存,但asp保存页面直到8点30分20秒才收到请求,则获取的系统时间为8点30分20秒,因而误判此人为迟到。rn 现在我想改为在flash中点击保存时同时获取当前服务器时间,再发送到asp保存页面,asp页面以reques.querystring形式获取此时间作为签到时间,从而避免了因系统慢导致的延迟,请问应如何在flash中获取服务器时间?rn 我也想过在打开flash时,先通过所在asp页面获取当前服务器时间,然后在flash中自动模拟时钟运行,这样模拟出的时间与服务器时间应该不会有偏差。请问在flash中如何能做到以某个时间为起始,自动模拟时钟运行?
php 获取当前、两个月之前的日期
获取当前日期 date('Y-m-d',time()); 获取两个月之前的日期(天:days;年:years) date("Y-m-d",strtotime("-2 months",strtotime($today)));
php中的时间(日期)函数
php中比较常用的几个时间函数。time()、microtime() 、date()
JS中获取当前的时间
1.yyyy-MM-dd(年月日) /** * yyyy-MM--dd * */ getNowFormatDate: function () { var date = new Date(); var seperator1 = &quot;-&quot;; var year = date.getFullYear(); var...
java中日期和时间的获取
1、取得年月日、小时分钟秒1. public class DateTimeTest {2. public static void main(String[] args) {3. Calendar cal = Calendar.getInstance();4. System.out.println(cal.get(Calendar.YEAR));5. System.out.println(cal.g...
Java中日期和时间的获取
1.简单的获取日期的方法 import java.time.LocalDate; import java.time.LocalDateTime; public class GetDatatime { public static void main(String[] args) { LocalDateTime localdatetime=LocalDateTime.now();//新建一
如何在Visual C++6.0获取当前window系统的空闲时间
各位大神啊,教我如何在ViSual C++6.0 里面获取当前操作系统的空闲时间啊,就是鼠标和键盘不操作的时间rn,兄弟我第一天弄C++,最好有个代码,多谢了
如何在当前显示View中获取当前控制器
首先:我们得明白一个道理,程序和人一样每个事物之前都是有联系的,就想很久之前听说过的一句话:通过三个人,你能联系上世界上所有的人。所以程序之间每个对象之间只要他们有联系,我们就一定可以通过各种途径获取到我们想要的对象。好了,不扯了,步入主题。 一、UIWindow是一种特殊的UIView,通常在一个程序中只会有一个UIWindow,但可以手动创建多个UIWindow,同时加到程序里面
请问如何在SQLServer函数当中获取当前的时间....
-- =============================================rn-- Create table function (TF)rn-- =============================================rnIF EXISTS (SELECT * rn FROM sysobjects rn WHERE name = 'ADD_NEW_APPLICATION')rn DROP FUNCTION ADD_NEW_APPLICATIONrnGOrnCREATE FUNCTION ADD_NEW_APPLICATION(@intCustId int)rnrnRETURNS NumericrnASrnBEGINrn Declare @numAppId Numericrn Select @numAppId = Seq_app_Id.NextVal rn From Dualrn rn Begin rn Begin Tranrn Insert Into WMS_APPLICATION (rn APP_ID,CUST_ID,CREATE_TIME )rn Values (rn @numAppId,@intCustId,CURRENT_TIMESTAMP)rn If @@Error <> 0rn RollBack Tranrn Elsern Commit Tranrn Endrn Return @numAppId;rnEndrn以上是本人编写的函数,但是当我利用CURRENT_TIMESTAMP将当前时间插入到数据库当中的时候,老是提示Invalid use of 'getdate' within a function.请问该如何解决呢
PHP中怎么能显示系统当前的日期和时间!!谢谢
rnrnrn rn 输出系统当前的日期和时间rnrnrnrnrnrnrnrn这样写显示的时间不对啊??应该怎么改写啊,谢谢!!!
java 获取当前的日期、时间, 日期、字符串、long之间的相互转换
java 获取当前的日期、时间, 日期、字符串、long之间的相互转换
获取当前月日期
获取当月日期的方法,希望对你有所帮助!免费使用!
获取当前的日期
不知道有没有这样一个类或函数可以得到当前计算机上的时间?谢谢
VC中获取当前的日期、时间并格式化输出
VC与C++开发基础;如何获取当前的日期、时间并格式化输出
时间日期处理(获取服务器当前的日期和时间 getCurDateTime)
public static java.lang.String getCurDateTime() 获取服务器当前的日期和时间. 返回: 时间字符串(yyyy-MM-dd HH:mm:ss) /** * 获取服务器当前的日期和时间. * @return 时间字符串(yyyy-MM-dd HH:mm:ss) */ public static Stri...
相关热词 c# 标准差 计算 c#siki第五季 c#入门推荐书 c# 解码海康数据流 c# xml的遍历循环 c# 取 查看源码没有的 c#解决高并发 委托 c#日期转化为字符串 c# 显示问号 c# 字典对象池