PHP で拡張 mhash を実装するにはどうすればよいですか?この記事では主に、PHP に実装されている拡張 mhash 関数を紹介します。デフォルトの mhash 関数を使用するとエラーが報告され、2 つの解決策が見つかります。お役に立てれば幸いです。
今日PHPの暗号化関数mhashを使ったらエラーが出ました: Fatal error: Call to unknown function mhash()
mhashはPHPの組み込み関数なのですが、使ってみるとエラーが出てしまいました…。
いくつかの調査の後、2 つの方法をまとめました:
1. php_mhash.dll 拡張ファイルをインポートします。さらに、libmhash.dll もインポートする必要があります (mhash ライブラリのロードはこのファイルに依存します)。 Apache 設定ファイル Httpd.conf の :/php/libmhash。dll"。
2、カスタム mhash 拡張関数を使用します。
function hmac_md5($key, $data) { if (extension_loaded('mhash')) { return bin2hex(mhash (MHASH_MD5, $data, $key)); } $b = 64; if (strlen($key) > $b) { $key = pack('H*', md5($key)); } $key = str_pad($key, $b, chr(0x00)); $ipad = str_pad('', $b, chr(0x36)); $opad = str_pad('', $b, chr(0x5c)); $k_ipad = $key ^ $ipad; $k_opad = $key ^ $opad; return md5($k_opad . pack('H*', md5($k_ipad . $data))); }
どちらの方法もスムーズに使用できます PHP の Mhash 暗号化関数
PHP 暗号化拡張ライブラリ - Mhash 拡張ライブラリ インスタンスの使用方法の詳細
以上がPHP は拡張された mhash を実装しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。