require_once引发HTTP ERROR 500

时间:2016-10-07 10:03:22

标签: php

我在电子商店网站上的团队工作。

最近,我们已经将Debian Jessie和php5.4传递给了5.6

从那时起,我们在require和require_once

中遇到了多个错误

这是一个引发ERROR 500的文件

<?php
require('/data/vhosts/mycompany.com/public_html/mp/../includes/functions/marketplace_tools.php');
//print_r(get_included_files());

require_once('/data/vhosts/mycompany.com/public_html/mp/../includes/functions/marketplace_tools.php');
echo 'pouet';
?>

error.log说:

PHP Fatal error: Cannot redeclare match_marketplace_products() in Cannot redeclare match_marketplace_products() on line 1

  • 文件路径很好。

  • Marketplace_tools.php没有

  • 中的要求/包含
  • Marketplace_tools.php只是我们使用的一大堆功能
  • 如果我在命令行中运行此文件,则效果很好
  • 如果我取消注释print_r,则不会引发ERROR 500
  • 此错误随机出现并消失

1 个答案:

答案 0 :(得分:0)

Cannot redeclare match_marketplace_products()

此错误消息告诉您当前PHP程序中已存在的文件中存在函数名称(match_marketplace_products)。

您正在使用require_once(),但请检查您是否未使用require()(或include())在其他地方提取同一文件。

同时检查函数名match_marketplace_products是否只在这一个文件中定义 - 如果它在另一个文件中定义,如果它也包含在内,那么这将导致此错误。