php日期格式轉(zhuǎn)換總結(jié):
創(chuàng)新互聯(lián)主營平江網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,成都App制作,平江h(huán)5微信小程序搭建,平江網(wǎng)站營銷推廣歡迎平江等地區(qū)企業(yè)咨詢
?php
//將當(dāng)前時(shí)間轉(zhuǎn)換成yyyy-mm-dd格式串,再轉(zhuǎn)換成日期格式,繞了一圈哈
echo strtotime(date('Y-m-d',time()).' 00:00:00');
//將GNU 日期輸入格式的字符轉(zhuǎn)換成時(shí)間
echo strtotime('now');
//標(biāo)準(zhǔn)的字符串轉(zhuǎn)換成時(shí)間
$t = '2012-9-10 15:18:06';
$time = strtotime($t);
//將時(shí)間轉(zhuǎn)換成日期字符yyyymmdd,再轉(zhuǎn)換成整型格式
$d = intval(date('Ymd',$time));
echo '付款時(shí)間:'.$d;
?php
header("Content-type: text/html; charset=utf-8");
$txDate = '2016-06-16';
$dateTime1 = strtotime($txDate); ?//int 1466028000 將英文文本日期時(shí)間解析為 Unix 時(shí)間戳:
$dateTime2= date("Y-m-d H:i:s",$dateTime1); //string '2016-06-16 00:00:00'
(length=19) ?Date() 函數(shù)把時(shí)間戳格式化為更易讀的日期和時(shí)間。
//拼接今日最后時(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;?
標(biāo)準(zhǔn)時(shí)間與時(shí)間戳轉(zhuǎn)換如下:
?php
$nowtime=date("Y-m-d?H:i:s");
//標(biāo)準(zhǔn)時(shí)間轉(zhuǎn)為時(shí)間戳
$dateline=strtotime($nowtime);
//時(shí)間戳轉(zhuǎn)為標(biāo)準(zhǔn)時(shí)間
$nowtime=date('H:i:s',$dateline);
?
PHP時(shí)間戳函數(shù)獲取英文文本日期時(shí)間:
當(dāng)前時(shí)間:echo date(”Y-m-d H:i:s”,time()) 結(jié)果:2015-01-22 09:40:25
指定時(shí)間:echo date(”Y-m-d H:i:s”,strtotime(”+1 day”)) 結(jié)果:2015-01-23 09:40:25
需要注意的問題:
一、PHP時(shí)間大的來分有兩種,一是時(shí)間戳類型(1228348800),二是正常日期格式(2015-12-5)
二、php5.1以上時(shí)間戳?xí)c實(shí)際時(shí)間相差8小時(shí),解決辦法如下
1、最簡(jiǎn)單的方法就是不要用php5.1以上的版本--顯然這是不可取的方法!??!
2、修改php.ini。打開php.ini查找date.timezone 去掉前面的分號(hào)= 后面加Asia/Shanghai,重啟apache服務(wù)器即可--缺點(diǎn)就是如果程序
放到別人的服務(wù)器上,不能修改php.ini,那就奈何不得了。
3、在程序中添加時(shí)間的初始化的語句即:“date_default_timezone_set("Asia/Shanghai"); ”
這樣就可以實(shí)現(xiàn)輸出的是北京時(shí)間了!
假設(shè):
$year=2010;
$month=5;
$day=31;
$date = $year."-".$month."-".$day;
insert into aa (date) values($date) ;
我一般用時(shí)間戳timestamp存在數(shù)據(jù)庫中,用字符串的話,轉(zhuǎn)換會(huì)有點(diǎn)麻煩
php有一個(gè)函數(shù)data()可將時(shí)間戳轉(zhuǎn)為你想要的日期時(shí)間格式,如果是日期字符串,要先用strtotime轉(zhuǎn)為時(shí)間戳,如 date("Y-m-d H:i:s",strtotime(時(shí)間字符串))
你可以用date("Y年m月d日",strtotime($_news_row['updatetime']))來轉(zhuǎn)換
oracle中,日期轉(zhuǎn)換函數(shù)有很多,常用命令如下:
to_char()命令將時(shí)間戳轉(zhuǎn)換為用戶規(guī)定的日期格式,如:
select
to_char(sysdate,'yyyy-mm-dd
hh24:mi:ss')
from
dual;
語法:to_char(x
[,format])
說明:將x按format格式轉(zhuǎn)換成字符串。x可以是日期或者數(shù)字或時(shí)間戳,format是一個(gè)規(guī)定了x采用何種格式轉(zhuǎn)換的格式字符串
to_date()命令可以將一個(gè)日期格式的字符串轉(zhuǎn)換成date類型數(shù)據(jù),如:
select
to_date('2014-05-07
13:23:44','yyyy-mm-dd
hh24:mi:ss')
from
dual;
語法:to_date(c
[,format])
說明:將符合format指定的特定日期格式的字符串c轉(zhuǎn)換成date類型的數(shù)據(jù)
to_timestamp()函數(shù)可以將一個(gè)時(shí)間格式的字符串轉(zhuǎn)換成時(shí)間戳
select
to_timestamp('2014-06-20
12:11:11','yyyy-mm-dd
hh24:mi:ss')
from
dual;
語法:to_timestamp(c
[,format])
說明:將字符串c轉(zhuǎn)換為一個(gè)時(shí)間戳數(shù)據(jù)類型
---to_char()命令可以將時(shí)間戳轉(zhuǎn)換成字符串:
select
to_char(
to_timestamp('2014-06-20
12:11:11','yyyy-mm-dd
hh24:mi:ss'),'yyyy-mm-dd
hh24:mi:ss')
from
dual;
當(dāng)需要進(jìn)行兩個(gè)日期的比較時(shí),不需要比較時(shí)間,可采用trunc()命令來截取日期
sql
select
to_char(
trunc(sysdate),
'yyyy-mm-dd
hh24:mi:ss')
from
dual;
sql
select
to_char(
sysdate,
'yyyy-mm-dd
hh24:mi:ss')
from
dual;
比較兩句的運(yùn)行結(jié)果,可以看到差別。