一尘不染

“致命错误:无法重新声明 ”

php

我有一个函数(从文件顶部开始,这就是它的外观):

<?php
//dirname(getcwd());
function generate_salt()
{
    $salt = '';

    for($i = 0; $i < 19; $i++)
    {
        $salt .= chr(rand(35, 126));
    }

    return $salt;
}
...

由于某种原因,我不断收到错误消息:

致命错误:无法在/Applications/MAMP/htdocs/question-
air/includes/functions.php中重新声明generate_salt()(先前在/Applications/MAMP/htdocs/question-
air/includes/functions.php:5中声明) 13

我不知道为什么或如何发生这种错误。有任何想法吗?


阅读 295

收藏
2020-05-26

共1个答案

一尘不染

此错误表明您的功能已经定义;这可能意味着:

  • 您在两个文件中定义了相同的功能
  • 或者您在同一文件的两个位置定义了相同的功能
  • 或包含两次定义您的函数的文件(因此,似乎两次定义了该函数)

为了帮助您解决第三点,一种解决方案是在包含文件时使用,include_once而不是使用-因此,不能多次包含该文件。includefunctions.php

2020-05-26