【问题标题】:Undefined function sha256()未定义函数 sha256()
【发布时间】:2011-12-16 11:27:46
【问题描述】:

我有这个 php 代码:

$password = sha256($_POST['password']);

但是当我运行这段代码时,它会说:

Fatal error: Call to undefined function sha256() in .... on line ...ix it as 

这段代码有什么问题,我必须做些什么来解决这个问题,因为我知道sha256 存在。

我也试过了:

$password = sha256(trim($_POST['password']));

但这也不起作用。

【问题讨论】:

  • 你可能认为sha256存在;然而,事实并非如此。它在哪里定义?为什么不使用hash('sha256', ...
  • 对不起,标题是误会了:/

标签: php cryptography undefined trim sha256


【解决方案1】:

你可以使用

hash( 'sha256', $string );

http://de.php.net/manual/de/function.hash.php

【讨论】:

    【解决方案2】:

    Suhosin 扩展将函数 sha256() 甚至 sha256_file() 添加到 PHP 核心。

    安装了扩展程序:

    <?php
    var_dump(function_exists('sha256'));
    ?>
    
    bool(true)
    

    【讨论】:

      【解决方案3】:

      php标准库中没有这个功能。请改用hash 函数。 http://php.net/manual/en/function.hash.php 喜欢:

      $pass = hash('sha256', $_POST['password']);
      

      【讨论】:

        【解决方案4】:

        嗯嗯。那个函数doesn't exist。如果要使用 SHA256 算法,请改用hash

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2018-06-17
          • 2014-10-01
          • 2014-06-19
          • 1970-01-01
          • 1970-01-01
          • 2021-10-16
          • 2018-12-20
          相关资源
          最近更新 更多