致命错误:无法重新声明mss()(之前在*中声明)

Rob*_*Rob 7 php function

我不明白,该功能不存在,即使我将其改为一些荒谬的名字,它仍然无效.谁能找到问题呢?

function mss($value){
    $data = mysql_real_escape_string(trim(strip_tags($value)));
    return $data;
}
Run Code Online (Sandbox Code Playgroud)

编辑:我忘了提及它的XAMPP

Ben*_*owe 7

这意味着你要么在两个单独的位置定义函数,要么两次包含相同的文件.

使用include_once/require_once而不是include/require.


Mik*_*e B 5

本·罗的回答几乎肯定就是发生这种情况的原因。

我不推荐这样做,但你总是可以将你的函数包装在function_exists()

if(!function_exists("mss")) {

    function mss($value){
        $data = mysql_real_escape_string(trim(strip_tags($value)));
        return $data;
    }

}
Run Code Online (Sandbox Code Playgroud)

这个解决方案很混乱。找出为什么你的文件被包含两次或者这个函数在哪里定义了两次几乎总是更可取的。但是,对于特殊情况,此解决方案可能是合适的。


小智 1

如果您将其保存在单独的文件中,是否会不小心多次将其包含在内?