PHP:为date()找到正确的算法;有一年的时差

时间:2015-05-06 00:56:33

标签: php algorithm date

我目前正在开发一种算法来为一年中的每一天自动播放一个独特的音频消息,这取决于一周中的哪一天由七个不同的人之一说出。

例如:在 5月7日,音频文件 05-07.mp3 将自动播放,并且Barack Obama图片的名称为 04.png ,因为它是星期四。后天是5月8日,所以05-08.mp3播放,Angela Merkel为05.png。

现在问题在于:

今年年初是星期四,明年1月1日是星期五。因此,如果我按照我的解释使用我的剧本,带图像05.png的Angela Merkel将使用Barack Obama的声音与01-01.mp3 ..

如何修复我的脚本,以便创建包含日期文件名的音频文件?我需要改变什么?另一个问题是,明年也是2月29日!

目前我的脚本使用这个PHP代码:

<audio><source src="/mp3/<?php echo date("j"); echo "-" . date("m"); ?>.mp3" /></audio>

<img src="/png/<?php echo date("N"); ?>.png">

1 个答案:

答案 0 :(得分:1)

您应该使用数据库来存储mp3和相应的名称。如果您不能使用数据库,或者您可以将声音的文件名重命名为obama_01-01.mp3,然后您可以检查。

@edit

$soundname = 'obama_01-01.mp3';
$imagename = explode('_',$soundname)[0];

$imagename .= '.png'

然后重命名您的图片&#39;姓名到obama.png等等

@ EDIT2

打印您可以使用的声音

glob("*_01-01.mp3");

PHP: glob - Manual

PHP: explode - Manual