【问题标题】:Why do I get a fatal error "redeclaring" a function that's only declared once? [duplicate]为什么“重新声明”只声明一次的函数会出现致命错误? [复制]
【发布时间】:2011-10-31 03:54:23
【问题描述】:

(用 MySQL 编写 PHP)

致命错误:无法在 C:\xampp\htdocs\Project\Func\user.func 中重新声明 logged_in()(之前在 C:\xampp\htdocs\Project\Func\user.func.php:9 中声明)。 php 在第 9 行

我正在创建一个函数来检查用户是否已登录。我将该函数声明为logged_in() {},但该函数会导致上面看到的错误,即使我以前从未声明过它。

该函数在定义时也不起作用,带有 isset 和对 MySQL 代码的引用。

【问题讨论】:

  • 你可以显示声明函数的完整行吗?

标签: php mysql


【解决方案1】:

即使我以前从未声明过?

它一定是之前在某处声明过的。

也许你两次包含user.func.php

【讨论】:

  • +1 这是防止此类错误的提示:首选include_once 而不是include
【解决方案2】:

如果您无法确定您之前是否声明过它,请在单独的测试类中使用this function。它将识别您调用该函数的次数。

如果它说它之前被调用过,请下载像 grepWin 这样的搜索程序,然后在您的 public_html 文件夹中搜索托管您的恶意函数的文件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-15
    • 2011-07-17
    • 2017-11-25
    • 1970-01-01
    • 2010-11-28
    相关资源
    最近更新 更多