⑴ php獲取指定任意一天的時間,格式為yyyy-mm-dd hh:mm:ss
echo date('Y-m-d H:i:s',time());
這樣獲取的是當前時間,想獲取任意時間,將time()替換成任意時間的時間戳,望採納,謝謝
⑵ php中刪除資料庫中在當前時間一天以前的數據怎麼實現啊
兩種方案:
一種是正統方案,把SQL語句提交給運維人員,他們會處理,一般是用crond解決。
另外,有一種很邪行的辦法,不推薦,但無可奈何的時候可以用一下。
如果有某個文件,比如comm.php是被所有文件引用的,在它裡面加一段:
if(mt_rand(1,1000)==1){
//runyoursql
}
其目的就是按照千分之一的概率去執行刪除數據的動作。
一方面確實可以刪除數據,另一方面也避免了每次執行PHP頁面都佔用資料庫資源。
可以適當監控一下,調整成合適的執行概率。
或者,把這一小段代碼放到index.php裡面也可以。
⑶ php 計算時間差 求某個時間是幾分鍾之前、幾小時之前、幾天之前
php計算時間的應用主要有如下幾個:
echo "<br>***************用PHP列印出前一天的時間***************<br>";
echo date("Y-m-d ",strtotime(" -1 day"));//昨天
echo '<br>';
echo date("Y-m-d ",strtotime(" +1 day")); //明天
echo "<br>********************輸出當前時間*********************<br>";
echo date("Y年m月d日 l H:i:s A"); //2011年08月29日 Monday 04:52:25 AM
echo '<br>';
echo date("y-n-j D h:i:s a"); //11-8-29 Mon 04:52:25 am
echo '<br>';
echo date("Y年n月j日 l G:i:s a",strtotime("now"));//2011年8月29日 Monday 7:56:05 am
echo "<br>*****************兩個日期之間的天數******************<br>";
$str1=strtotime("2007-02-08");
$str2=strtotime("now");
print_r (floor(($str2-$str1)/(3600*24)));
echo "<br>**********************倒計時*************************<br>";
$time1=strtotime("2012-7-18 17:30:00");
$time2=strtotime("now");
$sec=$time1-$time2;
$year=floor($sec/3600/24/365);//年
$temp=$sec-$year*365*24*3600;
$month=floor($temp/3600/24/30);//月
$temp=$temp-$month*30*24*3600;
$day=floor($temp/3600/24);//日
$temp=$temp-$day*3600*24;
$hour=floor($temp/3600);//小時
$temp=$temp-$hour*3600;
$minute=floor($temp/60);//分
$second=$temp-$minute*60;//秒
echo "距離培訓畢業還有".$year."年".$month."月".$day."天".$hour."小時".$minute."分".$second."秒";
⑷ php得到當前時間的前多少天時間
使用PHP的strtotime函數可以獲取指定時間或日期的時間戳,然後再使用date函數格式化時間戳就可以了。
舉例如下:
date_default_timezone_set('PRC');//設置時區
//列印出3天前的時間
echo(date('Y-m-dH:i:s',strtotime("-3day")));
//列印出2個星期前的時間
echo(date('Y-m-dH:i:s',strtotime("-2week")));
//列印出5個小時後的時間
echo(date('Y-m-dH:i:s',strtotime("+5hours")));
//列印出1個星期後的時間
echo(date('Y-m-dH:i:s',strtotime("+1week")));
輸出結果:
⑸ 1. 用PHP列印出前一天的時間格式是2006
echo date('Y',strtotime('-1 day',time()));
補充:date('Y-m-d H:i:s',strtotime('-1 day',time())); //完整的時間格式
echo date('Y-m',strtotime('-1 month',time())); //列印出前一個月
⑹ php有沒相關函數可以獲取給定日期的上個月的第一天及最後一天
沒有,可以取當前月的第一天00:00的時間戳,然後減24小時,再date即是上個月的最後一天。
如:
$prev_month_last_day = date("Y/m/d", strtotime(date("Y-m-1")) - 86400);
list($year, $month, $day) = explode("/", $prev_month_last_day);
$prev_month_first_day = $year . '/' . $month . '/1';
printf("first day of prev month is : %s\nlast day of prev month is : %s\n", $prev_month_first_day, $prev_month_last_day);
⑺ 如果在PHP中判斷某一天是在某一日期的前或後
//你還需要知道的另一個變數是年份,不過依你的意思應該是當年。
$timestamp = time();
$dateYear = date('Y', $timestamp);//當前年,依當前需要可以不需要比較,但有時也許會用到,比如你的記錄不是當年要處理的
$dateMonth = date('n', $timestamp);//當前月份數字,沒有前導零
$dateDay = date('j', $timestamp);//月份中的第幾天,沒有前導零
//剩下的就是比較了,比如你要比較的日期是 2007-03-01
$eventDate = '2007-03-01';
$eventDateArr = explode('-', $eventDate);
$eventYear = intval($eventDateArr[0]);
$eventMonth = intval($eventDateArr[1]);
$eventDay = intval($eventDateArr[2]);
//上面是年月日的拆分,根據實際情況可以調整,如果你直接可以得到就不需要這樣取了。
//之後剩下的就是比較了,先比較年
if($dateYear == $eventYear) {
//同年
if($dateMonth == $eventMonth) {
//同月
if($dateDay == $eventDay) {
//同一天,就是當前日期就是事件觸發的日期
} elseif($dateDay > $eventDay) {
//事件已經過期了
} else {
//事件觸發日期還沒到
}
} else {
//之前或之後,再需要詳細判斷可以在這里比較哪個月份大
}
} else {
//之前或之後,再需要詳細判斷可以在這里比較哪個年份大
}
//其實這種比較是最簡單的邏輯判斷,如果你在記錄時間觸發日期時記錄的是 unix 時間戳,這里可以直接進行時間戳比較不過需要處理一下,因為時間戳是精確到秒的
//或者把你記錄的日期及其後一天直接轉化成 unix 時間戳,時分秒都用 0 ,和當前時間戳比較,細節判斷就自己去分析吧,可用函數去查查手冊裡面 strtotime() ,時間相關函數參數很多,不過用過幾次就熟悉了。
⑻ 用PHP怎麼取得7天前的日期
$date = date('Y-m-d', strtotime('-7 days')); //保留年-月-日
<?php echo echo date(」Y-m-d H:i:s」,strtotime(」-7 day」)) ;?> //保留年-月-日 時:分:秒
strtotime('-7 days') 獲得的是時間戳
strtotime('now')); //獲取當前的時間戳
time() //獲取的時間戳
(8)php指定日期的前一天擴展閱讀:
一、使用函式 date() 實現
在編輯器中輸入<?php echo $showtime=date("Y-m-d H:i:s");?>,點擊回車就可以得知當前的時間。其中Y是代表4位的年份,H是24小時制,i 是分鍾,如: "00" 至 "59" 。s -是秒,如: "00" 至 "59" 。
d 是幾日,二位數字,若不足二位則前面補零。 如: "01" 至 "31" 。m代表月份,二位數字,若不足二位則在前面補零,如: "01" 至 "12" 。
二、使用time函數
在編輯器中輸入echo date("y-m-d",$time)點擊回車就可以得知當前的時間,其中Y是代表4位的年份,m代表月份,二位數字,若不足二位則在前面補零,如: "01" 至 "12" 。d 是幾日,二位數字,若不足二位則前面補零。 如: "01" 至 "31" 。
三、使用strftime函數
在編輯器中輸入echo strftime ("%hh%m %a %d %b" ,time());點擊回車就可以得知當前的時間。