【问题标题】:PHP4 - "Fatal error: Cannot redeclare function()"PHP4 - “致命错误:无法重新声明函数()”
【发布时间】:2010-11-28 14:22:39
【问题描述】:

我第二次遇到这个...

我有函数foo(),它内部有一个名为formatStr() 的辅助函数,用于array_map() 调用。当我在脚本中多次调用foo() 时,我收到“致命错误:无法重新护理formatStr()”。这让我相信formatStr() 不是在函数中本地声明的,而是全局声明的。这是真的?你能用function_exists() 解决这个问题吗?

谢谢

【问题讨论】:

    标签: php php4


    【解决方案1】:

    您在 foo() 函数中定义了一个函数?如果是这样,请将其移出。

    否则,只需将 formatStr() 包装在 function_exists() 中...

    if (!function_exists('formatStr'))
    {
        function formatStr()
        {
            // Your function code
        }
    }
    

    【讨论】:

    • 我知道,但是用辅助函数弄乱全局名称空间似乎是错误的。我想我必须等到我们升级到 PHP5 才能使用匿名函数。谢谢。
    猜你喜欢
    • 2011-07-17
    • 1970-01-01
    • 2017-03-11
    • 2010-12-29
    • 2015-08-29
    • 2012-06-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多