无法重新声明功能 - 试图每X秒调用一次函数 - php

时间:2017-03-02 14:03:30

标签: php

我有一个php问题。

我有一个从.txt文件中读取数据的php文件。 这适用于此代码:

$filename= "deadlines.txt";
$fp = fopen($filename,"r");
$content = fread($fp, filesize($filename));
$rawArray = setRawArray($content);
$epochAndTitleArray = toEpoch($rawArray);

现在,我想让它每秒执行一次,而不仅仅是一次开始。 所以,我试着把它装进一个函数,就像这样:

$filename= "deadlines.txt";
$fp = 0;
$content = 0;
$rawArray = 0;
$epochAndTitleArray = 0;
function readFile(){
$GLOBALS['fp'] = fopen($GLOBALS['filename'], "r");
$GLOBALS['content'] = fread($GLOBALS['fp'], filesize($GLOBALS['filename']));
$GLOBALS['rawArray'] = setRawArray($GLOBALS['content']);
$GLOBALS['epochAndTitleArray'] = toEpoch($GLOBALS['rawArray']);
}

在这种情况下,我正在使用全局变量,之前,我没有完成它,并且在函数本身之前省略了行。我认为这是不正确的,所以我添加了全局变量。

现在,这不起作用。 它给了我以下错误:

致命错误:无法在第28行的.....中重新声明readFile(), 这一行28是函数末尾的结束行。

你们能帮助我完成这项任务吗? 谢谢!

2 个答案:

答案 0 :(得分:3)

readfile是php中定义的函数,你不能重新声明它或使用相同的名称重新声明任何函数。

有关如何在php

中声明有效functions的更多参考
  

PHP不支持函数重载,也不支持   取消定义或重新定义先前声明的函数。

答案 1 :(得分:1)

重命名' readFile'另一方面,readfile()是预定义的函数' http://php.net/manual/kr/function.readfile.php'