0

我正在创建一个简单的密码哈希函数:

function create_hash($password)
{
    $salt = 'HN|fQyjB.{G~tB%)GxpQ6)1;fW|dr9}ME)np|4@%D]ciL|xI~FqXnvoJs.-.30q}';
    $salt2 = '1e,/]$rc4 +`e==H(^bV+ZBh!p<';
    $hashed_password = md5(strval($salt.$password.$salt2));
    return $hashed_password;
}

但是当我调用我的函数来散列密码时,我得到了一个错误。

  $data = array(
 'email'=>$this->input->post('email'),
 'password'=> create_hash($this->input->post('password')),
  );

当我用 Codeigniter 的 md5 替换我的 create_hash 时,一切正常。也许我做错了什么,有人可以给我建议。如何正确进行自定义散列

4

1 回答 1

0

通常会发生这种情况,因为您尝试调用函数'create_hash'的范围,并且此函数超出范围。如果在类中定义函数,只需使用 $this->create_hash(); 如果没有帮助,您可以查看 php 日志或 apache 日志以获取更多错误详细信息。

于 2013-04-23T16:33:03.800 回答