从脚本更改PHP时间而不使用settime

从脚本更改PHP时间而不使用settime,php,time,Php,Time,我想这是不可能的,但我想我会问。假设我有两个函数。函数A调用函数B。函数B返回当前时间。e、 g function a() { return b(); } function b() { return time(); } 进一步说,我想让b在不同的时间返回。比如说日期是“2014-09-01”,但我不想改变函数b。所以我不能在函数b中使用strotime,也不能将某些内容传入函数b并返回。。。我完全被b困住了。有没有办法改变函数a中的时间,使函数b返回函数a中指定的时间?e、

我想这是不可能的,但我想我会问。假设我有两个函数。函数A调用函数B。函数B返回当前时间。e、 g

function a()
{
    return b();
}

function b()
{
    return time();
}
进一步说,我想让b在不同的时间返回。比如说日期是“2014-09-01”,但我不想改变函数b。所以我不能在函数b中使用strotime,也不能将某些内容传入函数b并返回。。。我完全被b困住了。有没有办法改变函数a中的时间,使函数b返回函数a中指定的时间?e、 g

function a()
{
    set_default_time_to('2014-09-01');
    return b(); // returns equivalent of strtotime('2014-09-01')
}

function b()
{
    return time();
}
编辑:我被要求澄清

我想我太复杂了,这里有一个简单的解释,没有两个函数。。。我想要一些能做如下事情的东西

function a()
{
    echo time(); // echos current time
    set_default_time_to('2014-09-01');
    echo time(); // returns equivalent of strtotime('2014-09-01')
}
我之所以将它分成两个函数,是因为我想强调一点,即我不能仅仅将时间更改为strotime、mktime或任何其他函数。第二个函数做了额外的工作,但是为了简单起见已经被删除了

function a()
{
    echo b(); // echos current time
    set_default_time_to('2014-09-01');
    echo b(); // returns equivalent of strtotime('2014-09-01')
}

function b()
{
    $time = time();
    // Do some logic stuff here
    return $time;
}
我不能改变b。事实就是这样


我也知道我们可以使用php到shell脚本,但我更喜欢一种不使用php的shell脚本的方法。

只需使用mktime,并将偏移秒作为参数传递给b。@KouberSaparev他只是说他不能以任何方式更改函数b他说他不想更改函数b,不是说他不能。事实上,这正是继承OOP概念发挥作用的地方。这是正确的方法。即使可能,通过改变服务器时钟来改变时间的行为也会带来更多的潜在问题。@KouberSaparev,因此我不能在函数b中使用strotottime,也不能将某些内容传入函数b并返回该内容。。。我被函数b困住了,正是。。。。我说过我不能改变它。改变一个函数很容易。。。如果我可以这样做,我会改变函数,这个问题将是毫无意义的。。。希望有一些php方法能够做到这一点,而不需要php求助于shell脚本和更改服务器细节。