PHP的问题,以下代码里当前时间和发布时间没有识别年份这个错误不知怎么修改请高手指点,万分感谢!

PHP的问题,以下代码里当前时间和发布时间没有识别年份这个错误不知怎么修改请高手指点,万分感谢!,第1张

你这个代码是js的= =

js获取当前时间戳为Mathround(new Date()getTime()/1000) 用这个时间戳跟你的起始结束时间戳做下对比就可以了。

关于php时间的判定时间戳如下。

$start_time=1517414400;//2018年2月1日0点0分0秒的时间戳

$end_time=1543593600;//2018年12月1日0点0分0秒的时间戳

$start_time>time()print('活动尚未开始'):'';

$end_time<time()print('活动已结束'):'';

如果你只是希望得到不重复的[2015,2016,2017]这样的数据,那你可以直接先把createTime的字段遍历出来,tp我记得也是有遍历数组的方法,然后用strstr(‘0’,‘4’,$arr),在循环中将这些字段值只保留前4位,然后依次写入数组,在加个判断,如果数组中存在相同元素,如已经有了2015,就不在写入

所以说,我不大清楚你的意图

把正常日期格式转为时间戳呢,请看如下代码:

$year=((int)substr("2008-12-04",0,4));//取得年份

$month=((int)substr("2008-12-04",5,2));//取得月份;

$day=((int)substr("2008-12-04",8,2));//取得几号;

echo mktime(0,0,0,$month,$day,$year);

这样就能把正常日期转成时间戳了,这里如果有时分秒也是同理。

PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。PHP 独特的语法混合了C、Java、Perl以及PHP自创的语法。

它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。

这个time()函数是将时间保存成时间戳格式,则要查当月数据,只要查当月第一天到当月最后一天的之间的数据即可。

假设这个用来判断的字段是date

sql语句

SELECT ………… WHERE………… `date` >= 本月第一天的time值 AND `date` < 下个月第一天的time值

所以这里就只要获取当月第一天以及下个月第一天的时间戳

具体如下:

<php

$cur = date('Y-m',time());//当天年月

$cur_y = date('Y',time());//当天年份

$cur_m = date('m',time());//当天月份

$cur_f = $cur '-1';//本月首日

$first = strtotime($cur_f);//时间戳最小值,本月第一天时间戳

//下月首日

if($cur_m>=12){

$cur_n = ($cur_y+1) '-1-1';

}else{

$cur_n = $cur_y '-' ($cur_m+1) '-1';

}

$last = strtotime($cur_n);//时间戳最大值,下个月第一天时间戳

>

再把$first 和 $last 放入sql语句里面就可以查询到数据了

这是php的方法

1、获取当前时间方法date()

很简单,这就是获取时间的方法,格式为:date($format, $timestamp),format为格式、timestamp为时间戳--可填参数。

2、获取时间戳方法time()、strtotime()

这两个方法,都可以获取php中unix时间戳,time()为直接获取得到,strtotime($time, $now)为将时间格式转为时间戳,$time为必填。清楚了这个,想了解更多,请继续往下看。

3、 date($format)用法

比如:

echo date('Y-m-d') ,输出结果:2012-03-22

echo date('Y-m-d H:i:s'),输出结果:2012-03-22 23:00:00

echo date('Y-m-d', time()),输出结果:2012-03-22 23:00:00(结果同上,只是多了一个时间戳参数)(时间戳转换为日期格式的方法)

echo date('Y')'年'date('m')'月'date('d')'日',输出结果:2012年3月22日

本文实例讲述了PHP日期与时间 *** 作技巧。分享给大家供大家参考,具体如下:

Demo1php

<php

//验证时间

//checkdate()

1月份

2日

3年

//checkdate()

判断这个日期是否是合法的日期

//不合法的日期,试一试

if(checkdate(7,16,2010)){

echo

'这个日期是合法有效的';

}else{

echo

'这个日期是非法的。';

}

>

Demo2php

<php

//date

--

格式化一个本地时间/日期

//date(),

彻底研究一下

//date()

可以存放两个参数,第一参数是日期和时间的格式化,[第二参数是时间戳]

//Y

表示四位数的年份,

y表示二位数的年份

//M

表示英文的月份缩写,m

表示阿拉伯数字的月份

//D

表示英文下的星期几缩写,d

表示阿拉伯数字的日

//第一个参数的格式化可以放一些无关紧要的字符串

//只要无关紧要的字符串不再

format

的目录里,就不会被识别

//echo

date('现在的日期是:Y-m-d');

//现在的日期是:2015-04-20

//时分秒

=

H

表示24小时制的小时,

//明明是

19

,为什么显示

11

点呢,东八区,差

8

个小时

//现在没有经过任何设置,所以时间在默认时区上

//echo

date('现在的日期是:Y-m-d

H:i:s');

//重点是年月日,时分秒

echo

date('r');

echo

date('现在的日期是:Y-m-d

H:i:sa');

>

Demo3php

<php

//取得当前的时间,返回一个数组

//"sec"

-

Unix

纪元起的秒数

//"usec"

-

微秒数

//"minuteswest"

-

格林威治向西的分钟数

//"dsttime"

-

夏令时修正的类型

//print_r(gettimeofday());

//第一数组的元素就是时间戳

//gettimeofday()

就是取得的当前时间的时间戳

//$a

=

gettimeofday();

//sec

取得当前时间的时间戳

//转换成人可以看得懂的时间

//第二个参数,对于本例来讲,放与不放,是一样的。

//echo

date('Y-m-d

H:i:s',$a['sec']);

print_r(gettimeofday(0));

echo

gettimeofday(1);

>

Demo4php

<php

//将时间戳转换成人可以看的懂的时间

//date()

函数的第二个参数就是时间戳

//如果第二个参数省略了,那么就返回当前时间

//如果第二个参数没有省略,那么就返回那个时间戳的时间

echo

date('Y-m-d

H:i:s',24554457865);

>

Demo5php

<php

//getdate()

也可以转换时间戳

//print_r(getdate());

//Array

(

[seconds]

=>

26

[minutes]

=>

34

[hours]

=>

10

[mday]

=>

20

[wday]

=>

1

[mon]

=>

4

//[year]

=>

2015

[yday]

=>

109

[weekday]

=>

Monday

[month]

=>

April

[0]

=>

1429526066

)

$t

=

getdate();

echo

$t['year'];

//传递一个时间戳

print_r(getdate(1029526066));

>

Demo6php

<php

//直接获取当前时间戳

//echo

time();//1429526328

//这个

time()

可以调整时间

//大家可以发现

time()

很有用处,可以过去现在和将来

echo

date('Y-m-d

H:i:s',time()+60608);

>

Demo7php

<php

//获取特定指定时间的时间戳

//这是当前的时间戳

//echo

time();

//我要取得

2008-08-08

08:08:08

$beijing2008

=

mktime(8,8,8,8,8,2008);

echo

date('Y-m-d

H:i:s',$beijing2008);

>

Demo8php

<php

//使用时间戳计算时间差

$now

=

time();//当前的时间戳

$wnow

=

mktime(0,0,0,8,16,2016);

//两个时间戳相减可以得到差秒

echo

round(($wnow

-

$now)/60/60,2)'相差这几个小时';

>

Demo9php

<php

//将人可读的时间,字符串形式,转换成时间戳

$a

=

strtotime('2010-7-16

15:15:15')-strtotime('2010-7-16

15:14:15');

if($a

>=

60){

echo

'请这位先生休息一会。';

}else{

echo

$a;

}

>

Demo10php

<php

//获取当前文件的修改时间戳

echo

date('Y-m-d

H:i:s',getlastmod());

>

Demo11php

<php

//配置系统环境变量

echo

date('Y-m-d

H:i:s');

echo

'<br/>';

//我开始设置时区

putenv('Tz=Asia/Shanghai');

echo

date('Y-m-d

H:i:s');

>

Demo12php

<php

//putenv('Tz=Asia/Shanghai');

//获取当前时区

echo

date_default_timezone_get();

echo

'<br/>';

//开始配置默认时区

date_default_timezone_set('Asia/Shanghai');

echo

date('Y-m-d

H:i:s')

;

echo

'<br/>';

echo

date_default_timezone_get();

>

Demo13php

<php

date_default_timezone_set('Asia/Shanghai');

//"tm_sec"

-

秒数

//"tm_min"

-

分钟数

//"tm_hour"

-

小时

//"tm_mday"

-

月份中的第几日

//"tm_mon"

-

年份中的第几个月,从

0

开始表示一月

//"tm_year"

-

年份,从

1900

开始

//"tm_wday"

-

星期中的第几天

//"tm_yday"

-

一年中的第几天

//"tm_isdst"

-

夏令时当前是否生效

print_r(localtime(time(),true));

//Array

(

[tm_sec]

=>

37

[tm_min]

=>

15

[tm_hour]

=>

19

//[tm_mday]

=>

20

[tm_mon]

=>

3

[tm_year]

=>

115

//[tm_wday]

=>

1

[tm_yday]

=>

109

[tm_isdst]

=>

0

)

>

Demo14php

<php

//返回时间戳和微秒数

//怎么计算页面运行加载时间

//页面打开的时候获取一个时间

//页面结束的时候获取一个时间

//用结束的时间减去打开的时间,那么就是运行时间

//

list($a,$b)=explode('

',microtime());

//

echo

$b;

function

fn(){

list($a,$b)=explode('

',microtime());

return

$a+$b;

//返回出精确的秒数

}

//在页面打开的时候,获取一个时间

$start_time

=

fn();

for($i=0;$i<10000000;$i++){

//

}

//页面结束的时候,获取一个时间

$end_time

=

fn();

echo

round(($end_time

-

$start_time),4);

>

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php日期与时间用法总结》、《PHP数组(Array) *** 作技巧大全》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php面向对象程序设计入门教程》、《PHP网络编程技巧总结》、《php字符串(string)用法总结》、《php+mysql数据库 *** 作入门教程》及《php常见数据库 *** 作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

因为你的格式有误,时间参数不要有逗号,逗号后面无法识别默认取当前年份了。

1echo date('Ymd',strtotime("24 Dec 2014"));

Ymd确实是返回8位年月日,不知道你要什么格式的。

以上就是关于PHP的问题,以下代码里当前时间和发布时间没有识别年份这个错误不知怎么修改请高手指点,万分感谢!全部的内容,包括:PHP的问题,以下代码里当前时间和发布时间没有识别年份这个错误不知怎么修改请高手指点,万分感谢!、thinkphp3.2如何获取数据库的年份、php如何把数组中的时间戳提取出来并转换为系统时间等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9632113.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存