在使用JQuery倒计时计时器时处理JavaScript和php之间的差异'

Dealing with difference between JavaScript and PHP's months when using a JQuery countdown timer

本文关键字:之间 php JavaScript JQuery 倒计时 计时器 处理      更新时间:2023-09-26

我(通过查询)从数据库检索一个日期。它的格式是:2013-04-08。在PHP中,我在循环中为每个产品获得promotion_end_dates,并添加JQuery倒计时脚本。问题是,当我调用倒计时函数:

$(".clock").countdown({until: new Date(<?php echo $promo_date;?>)});    

计数器计数1个月/30天,因为PHP和JavaScript之间的月计数方式不同。

如何使I $promo_date对应于正确的JavaScript月份?

假设你的mysql表保存YYYY-mm-dd格式的日期

在mysql语句后添加下列语句

$promo_date_exp = explode('-', $promo_date);

并将特定的Javascript行替换为以下行

$(".clock").countdown({until: new Date(<?php echo $promo_date_exp[0].','. ($promo_date_exp[1]- 1).','.$promo_date_exp[2]?>)});

你必须将php date作为字符串发送给javascript

$(".clock").countdown({until: new Date("<?php echo $promo_date;?>")}); 

你应该正确设置你的日期格式。根据Date的文档,您应该根据rfc 2822对其进行格式化。

$(".clock").countdown({
    until: new Date('<?php echo date('r', strtotime($promo_date)); ?>')
});