定义时间戳常量不更新的问题

wx10050805

server_dev.php内容

#!/usr/bin/env php
<?php
define('APP_PATH', __DIR__ . '/application/');
define('bind_default_module', 'api');
define('BIND_MODULE', 'api/Worker');
define('ENVIRONMENT', 'local');//本地环境启动文件

define('NOW_TIME', time());//当前时间戳
define('TIME_ZONE', 7);//当前时区
define('SMS_EXPIRESPAN', 300);//短信验证码失效时间
define("FX_LEVEL",3);  //分销的等级
define("OPEN_REDIS",1);  //是否开启Redis

// 加载框架引导文件
require __DIR__ . '/thinkphp/start.php';

app/api/controller/Worker.php内容

public function onWorkerStart($worker){
    $time_interval = 2;
    Timer::add($time_interval, function () {
        echo NOW_TIME."task run\n";
    }
}

我在启动文件server_dev.php中定义常量NOW_TIME为时间戳,但在php server_dev.php start之后,echo出来的NOW_TIME为固定值,这是什么原因呢?

1638503110task run
1638503110task run
1638503110task run

1016 1 0
1个回答

JustForFun

先复习下什么叫“常量”。另外,就算是变量,你又没修改过,又怎么会变?基础啊,基础

  • wx10050805 2021-12-03

    感觉你是没懂我的意思就在这里回答,而且提供的还是无用的回复,我已经找到问题所在了

  • JustForFun 2021-12-03

    你可以将修改之前和修改之后的 demo 发出来嘛,我看看我哪里理解错了

年代过于久远,无法发表回答
🔝