在JavaScript函数中使用PHP

时间:2015-04-21 14:38:31

标签: javascript php jquery

我使用jQuery倒计时插件在我的网站上有一个计时器 http://keith-wood.name/countdownRef.html

我正在使用SportsRadar的API列出一些日期为

的灯具
<?php echo date("Y/d/m/ - H:i", strtotime($nextMatch['KickOff'])); ?>

这将输出为23/04/2015 - 20:00

在倒计时插件中,他们的功能如下

<script>
    var matchDay = new Date();
    matchDay = new Date(2015, 04-1, 22, 20, 0, 0);
</script>

我只是想知道如何将PHP回声添加到JavaScript函数中?它甚至可能吗?

4 个答案:

答案 0 :(得分:1)

你可以使用类似的东西:

var matchDay = new Date(<?php $time = strtotime($nextMatch['KickOff']); 
echo date("Y", $time) . "," . date("m", $time) . "," .
    date("m", $time) . "," . date("H", $time) . "," .
    date("i", $time);
?>, 0, 0);

或者您在JavaScript中的解析日期

答案 1 :(得分:1)

PHP函数strtotime()为您提供自1970年以来的秒数。您可以使用此信息初始化javascript Date对象。但是,javascript需要自1970年以来的毫秒数,因此你应该将该值乘以1000:

<script>
    var matchDay = new Date(<?php echo strtotime($nextMatch['KickOff'])*1000;?>);
</script>

现在您知道匹配将在何时进行(在javascript中),您可以使用它来初始化倒计时或其他任何您想要对此信息执行的操作。

答案 2 :(得分:0)

PHP是服务器端,将运行一次。 JS与此不同。如果您需要JS来调用PHP脚本,请考虑进行AJAX调用。然而,看看你的目标,这似乎有点不必要。如果您只想回显数据,则可以使用JS来更新页面上的HTML元素。我认为这将是满足您要求的简单解决方案。

答案 3 :(得分:0)

通过这样做,它工作正常

<script>
var matchDay = new Date();
    matchDay = new Date('<?php echo date("Y", strtotime($nextMatch['KickOff'])); ?>', '<?php echo date("m", strtotime($nextMatch['KickOff'])); ?>'-1, '<?php echo date("d", strtotime($nextMatch['KickOff'])); ?>', '<?php echo date("H", strtotime($nextMatch['KickOff'])); ?>','<?php echo date("i", strtotime($nextMatch['KickOff'])); ?>');
</script>