0

我有个问题; 实际上我找不到任何解决方案。

我有一个名为 cron_hourly.php 的文件

该文件执行一些任务,应该由 cronjob 运行;我拥有 4 个站点,其中包含 4 个具有相同架构和结构的不同数据库;(4个站点几乎相同);这 4 个数据库只是它们持有的数据不同;

我需要为 4 个数据库运行这个文件;它对数据库进行一些查询,然后通过电子邮件发送一些信息。由于一些托管限制;我只能使用 1 个 cronjob;所以我在 4 个不同的目录中有 4 个 cron_hourly,它们执行相同的任务但在不同的数据库上!所以它们有一些函数和变量;实际上它们是相同的,只是它们连接到不同的数据库!问题是; 当我尝试使用下面的代码时

     include 'path1/cron_hourly.php';
     include 'path2/cron_hourly.php';
     include 'path3/cron_hourly.php';
     include 'path4/cron_hourly.php';

我收到错误“无法重新声明 someFunction()(之前在 '

相反; 如果我使用 include_once 只有要包含的第一个文件运行,而其他文件不运行!有什么我可以解决的吗?我想运行这四个文件而不会出现此错误!顺便一提; if(function_exists()) 无济于事!因为正如我之前所说,我需要为每个文件一遍又一遍地重新声明函数..

4

1 回答 1

1

您需要做的是使用命名空间,在此处查看更多信息:

http://php.net/manual/en/language.namespaces.rationale.php

于 2012-08-21T02:25:06.153 回答