?php
我們提供的服務(wù)有:網(wǎng)站制作、網(wǎng)站建設(shè)、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、肅北ssl等。為上1000家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的肅北網(wǎng)站制作公司
echo?date('Y-m-d',?strtotime('20150203'));
strtotime 這個函數(shù)用來處理時間很好用,下面幾個例子。
一天前 ? strtotime('-1 day');
七天前 ? strtotime('-7 days');
另外這個strtotime 對其他時間格式識別也很好用 ?yyyy/mm/dd ? yyyymmdd 等。
配合 date 就可以格式你想要的日期,
你問的這個就是 ?yyyymmdd 格式化為 ?yyyy-mm-dd。
=======
另外附一個該函數(shù)的手冊的鏈接,里面還有其他好多用法:
php日期格式轉(zhuǎn)換總結(jié):
?php
//將當(dāng)前時間轉(zhuǎn)換成yyyy-mm-dd格式串,再轉(zhuǎn)換成日期格式,繞了一圈哈
echo strtotime(date('Y-m-d',time()).' 00:00:00');
//將GNU 日期輸入格式的字符轉(zhuǎn)換成時間
echo strtotime('now');
//標(biāo)準(zhǔn)的字符串轉(zhuǎn)換成時間
$t = '2012-9-10 15:18:06';
$time = strtotime($t);
//將時間轉(zhuǎn)換成日期字符yyyymmdd,再轉(zhuǎn)換成整型格式
$d = intval(date('Ymd',$time));
echo '付款時間:'.$d;
?php
header("Content-type: text/html; charset=utf-8");
$txDate = '2016-06-16';
$dateTime1 = strtotime($txDate); ?//int 1466028000 將英文文本日期時間解析為 Unix 時間戳:
$dateTime2= date("Y-m-d H:i:s",$dateTime1); //string '2016-06-16 00:00:00'
(length=19) ?Date() 函數(shù)把時間戳格式化為更易讀的日期和時間。
//拼接今日最后時間2016-06-16 23:59:59
$dateTime= date("Y-m-d H:i:s",strtotime(date("Y-m-d",strtotime($dateTime2))."+ 23 hours 59 minutes ?59 seconds ")); //string '2016-06-16 23:59:59' (length=19)
$sql = select * form `vvt_user` where userid = 100 AND date_time = $dateTime2 AND date_time = $dateTime;?
函數(shù)名:date_format
參數(shù): $string 時間源,可以是2006-04-24 09:56:07這種格式,$format要格式化的形式,如%Y年%m月%d日%H時%M分%S秒看需要刪改
示例:?php
echo date_format($rs['time'],'%Y年%m月%d日%H時%M分%S秒');
?
function date_format($string, $format="%b %e, %Y", $default_date=null)
{
if (substr(php_OS,0,3) == 'WIN') {
$_win_from = array ('%e', '%T', '%D');
$_win_to = array ('%#d', '%H:%M:%S', '%m/%d/%y');
$format = str_replace($_win_from, $_win_to, $format);
}
if($string != '') {
return strftime($format, smarty_make_timestamp($string));
} elseif (isset($default_date) $default_date != '') {
return strftime($format, smarty_make_timestamp($default_date));
} else {
return;
}
} function smarty_make_timestamp($string)
{
if(empty($string)) {
$string = "now";
}
$time = strtotime($string);
if (is_numeric($time) $time != -1)
return $time; // is mysql timestamp format of YYYYMMDDHHMMSS?
if (PReg_match('/^\d{14}$/', $string)) {
$time = mktime(substr($string,8,2),substr($string,10,2),substr($string,12,2),
substr($string,4,2),substr($string,6,2),substr($string,0,4)); return $time;
} // couldn't recognize it, try to return a time
$time = (int) $string;
if ($time 0)
return $time;
else
return time();
標(biāo)準(zhǔn)時間與時間戳轉(zhuǎn)換如下:
?php
$nowtime=date("Y-m-d?H:i:s");
//標(biāo)準(zhǔn)時間轉(zhuǎn)為時間戳
$dateline=strtotime($nowtime);
//時間戳轉(zhuǎn)為標(biāo)準(zhǔn)時間
$nowtime=date('H:i:s',$dateline);
?
PHP時間戳函數(shù)獲取英文文本日期時間:
當(dāng)前時間:echo date(”Y-m-d H:i:s”,time()) 結(jié)果:2015-01-22 09:40:25
指定時間:echo date(”Y-m-d H:i:s”,strtotime(”+1 day”)) 結(jié)果:2015-01-23 09:40:25
需要注意的問題:
一、PHP時間大的來分有兩種,一是時間戳類型(1228348800),二是正常日期格式(2015-12-5)
二、php5.1以上時間戳?xí)c實(shí)際時間相差8小時,解決辦法如下
1、最簡單的方法就是不要用php5.1以上的版本--顯然這是不可取的方法?。?!
2、修改php.ini。打開php.ini查找date.timezone 去掉前面的分號= 后面加Asia/Shanghai,重啟apache服務(wù)器即可--缺點(diǎn)就是如果程序
放到別人的服務(wù)器上,不能修改php.ini,那就奈何不得了。
3、在程序中添加時間的初始化的語句即:“date_default_timezone_set("Asia/Shanghai"); ”
這樣就可以實(shí)現(xiàn)輸出的是北京時間了!