㈠ 如果在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中、 假设已知1号是星期一,请计算n天后是星期几,假如,n=4,则输出“四天后是星期五”
用计算的吗?日期加多少天后,得到新的日期,用新的日期直接就可以获取到星期几了,这个用函数就可以完成的。请查看手册date函数相关的内容。
㈢ nginx+php运行几天后偶尔会出现404错误
404一般是指找不到文件,才返回这个错。但你说重启后又没问题,所以初步排除。
按你的说法,推断了加了连接数限制,或者刷新间隔间制的选项。
看看nginx.conf里面,有没有limit_req/limit_conn的设置。
有的话,贴出来诊断。
㈣ 请问PHP如何计算一个日期10天后是哪一天求解答,谢谢!
echo date("Y-m-d H:i:s", strtotime("+10 day", strtotime($date)));
如果不是你已经转成了 date 格式,而是 time 格式,那就省事了。
echo date("Y-m-d H:i:s", strtotime("+10 day", $time));
如果你只要算从现在起,10天后,那更省事了。
echo date("Y-m-d H:i:s", strtotime("+10 day"));
㈤ php 获取当天之后30天的月历
1:以负责的心态去回答每个问题!不要随便回答问题!
2:看清楚提问人所问的问题!不要随便看就回答了哦!
3:多花点心思和时间去看看回答过的问题,也许提问题的人会再提出要求!
4:自己要足够理智和客观!毕竟你的回答被人让可,多少会影响到提问人的心态!
从这四点做起!一般就会获得最佳回答!
有过相关经验知识且独创的回答或是言简意赅切合问题需求的回答,常是提问者希望看到的解答.
有许多人遇到这种情况:回答内容非常长,看了半天却找不到回答的重点,更有一些越看越迷惑.
最佳解答注重的是回答的内容,而不是字数长短!没有分段、没有重点的回答,即便内容再好,也不易被理解!所以建议大家尝试以下回答方式: 先回答问题要点,再补充细节.回答内容段落分明,容易阅读理解.
比如多使用"条列式",如:1、2、3或a、b、c
还有就是选一些零回答的问题或是相对冷的分类来回答,也可能会更容易采纳为最佳答案~
其实我们在回答问题的同时,也是自己增长知识的机会,学会礼貌、尊重、耐心、细致,站在别人的角度考虑问题,你会收益非浅的!.
至于想获得最佳答案就要看你问的区域:
1:自己问的问题是否适合这个区域?
2:自己问的区域回答的人是否多?是否热心?
有些提问其实是没有最佳答案的!所以没必要太在意!
㈥ PHP得到某天N天后的问题
<?php
echo date("Ymd", time()+10*24*3600);
?>
这才是正确的方法,在任何操作系统和版本下面均正确,time获取当前时间(实际上是从 Unix 纪元《格林威治时间 1970 年 1 月 1 日 00:00:00》到当前时间的秒数),加号后面的10表示10天、每天24小时、每小时3600秒。修改10可以实现加上或者减去别的天数。
补充:
echo date("Ymd", strtotime("2007-11-01")+10*24*3600);
㈦ php已知今天是1号是星期一,求n天以后是星期几,假设n=4,输出4天后是星期4
$n=9;
$day=$n%7;
if($day==0){
$day=7;
}
echo'星期'.$day;
㈧ 自学php要多久
光学PHP肯定不够,最基本的也要学HTML,PHP包含的东西也很多,如果简单点,一个小留言板大概学了2个月就差不多了,但是PHP当中还有很多别的比如面向对象、GD库、cookie、session……。想要做个真正像样的网站,CSS、JS、SQL也是必不可少(ajax无非就是js+css做前台,php、asp或jsp做后台)。如果这些都要学会,至少要一年时间。
学PHP如果只是想学到可以看懂并修改像PHPWind、Discuz、WordPress等流行的应用代码的话,大概学3、4个月就差不多。
以上的时间都是建立在学习者对PHP抱有极大热情的人才成立,如果只是为了工作而不是兴趣,这些时间至少翻1倍。
㈨ PHP 如何获得当前日期后三天的日期
echo(strtotime("+1days"));//明天这个时候
echo(strtotime("+5hours"));//5小时之后的时间戳
echo(strtotime("+1week"));//下周这个时候的时间戳
㈩ PHP如何显示记录网站运行时间
假设你的当前时间为这种格式“2009-02-28 16:29:18”,想计算几天后,几小时后,几分钟后,几周,几个月,几年后的时间格式都没有问题,可用的计算方式如下:(限PHP使用)
<?php
$endtime='2009-02-28 16:29:18';
$endtime = date('Y-m-d H:i:s', strtotime($endtime.'1month'));
$endtime = date('Y-m-d H:i:s', strtotime($endtime.'1week'));
$endtime = date('Y-m-d H:i:s', strtotime($endtime.'1day'));
$endtime = date('Y-m-d H:i:s', strtotime($endtime.'1year'));
$endtime = date('Y-m-d H:i:s', strtotime($endtime.'1hour'));
$endtime = date('Y-m-d H:i:s', strtotime($endtime.'1minute'));
echo $endtime;
?>
如果要计算过去的时间,怎么写呢?很简单在数字前面加个“-”号就可以了,当然如果比较复杂的,几小时,几分钟的计算,都可以将时间字符串进行叠加即可!如下例:
<?php
$endtime='2009-02-28 16:29:18';
$endtime = date('Y-m-d H:i:s', strtotime($endtime.'+15day +1 hour -10minute'));
echo $endtime;
?>
怎么样,到这里你是不是学会了呢?
其实很简单有个PHP函数:strtotime
可以任意加减年、月、日,例子:
echo date("Y-m-d",strtotime("+3 day"));
// 输出:2008-07-13
echo date("Y-m-d",strtotime("+3 month"));
// 输出:2008-10-10
echo date("Y-m-d",strtotime("+3 year"));
// 输出:2011-07-10
很强大!!记住以后得多熟悉函数,如果不知道这个函数写方法的话,要写很多东西。处理也麻烦。
/*
* 指定两个时间段,返回不同的时间数
* $interval:只允许intervals有以下五个值:"w"(周)、"d"(天)、"h"(小时)、"n"(分钟) 和"s"(秒)
* $date1 通常为当前时间;
* $date2 需要计算的时间;
* zhoz.com 0:34 2008-7-13
*/
function DateDiff ($interval = "d", $date1,$date2) {
// 得到两日期之间间隔的秒数
$timedifference = strtotime($date2) - strtotime($date1);
switch ($interval) {
case "w": $retval = bcdiv($timedifference ,604800); break;
case "d": $retval = bcdiv( $timedifference,86400); break;
case "h": $retval = bcdiv ($timedifference,3600); break;
case "n": $retval = bcdiv( $timedifference,60); break;
case "s": $retval = $timedifference; break;
}
return $retval;
}