如何根据时间更改php脚本值?

时间:2017-06-22 12:26:07

标签: php datetime

首先,我不是php的专家。

我有一个网址重定向脚本。 它的工作原理是从.txt数据库中获取链接 我想根据时间选择数据库。 例如,从早上6点到下午1:59运行“db1.txt” 并从下午2点到5点59分运行“db2.txt”。

重定向脚本具有以下行来处理数据库。

$db = 'db.txt';

以下没有用

$time  = date("H:i", strtotime("$time"));
echo $time;
if ($time >= 6 && $hour <= 14)
{
$db = db1.txt;
}
else
{
$db = db2.txt;}

2 个答案:

答案 0 :(得分:1)

由于您只检查:idate()所需的小时数。查看Docs以查找所有date()参数。

此外,您会在$db = db1.txt;$db = db2.txt;收到语法错误,因为您缺少引号。

strtotime("$time")对我来说不对劲。我想你想要使用time()

来获取当前时间戳

更改代码如下:

$time = date("H", time());
echo $time;

if ($time >= 6 && $time <= 14)
{
    $db = 'db1.txt';
}
else
{
    $db = 'db2.txt';
}

答案 1 :(得分:1)

如果您只是使用时间,您可以使用三元运算符在一行中轻松定义文件!

如果您当前的服务器时间可以:

$db = (date('H') >= 6 && date('H') < 14) ? 'db1.txt' : 'db2.txt'; 

或者,如果您可以定义时间:

$defineDate = date('H', strtotime($myTime));
$db = ($defineDate >= 6 && defineDate < 14) ? 'db1.txt' : 'db2.txt'; 

不要忘记使用正确条件:

($defineDate >= 6 && defineDate < 14) // To 6 to 13:59:59
($defineDate >= 6 && defineDate <= 14) // To 6 to 14:00:00

官方PHP文档:      - PHP Date function      - PHP Strtotime function      - PHP Ternary operator