ホームページ >バックエンド開発 >PHPチュートリアル >PHP 暗号化 3DES エラー 未定義関数の呼び出し: mcrypt_module_open() 解決方法、mcryptmoduleopen_PHP チュートリアル
私も PHP の初心者で、w3cschool を通じて php の基本原理を理解した後、書き始めました。しかし、まだまだ新人。
3DES 暗号化方法が正しいかどうかに関係なく、方法はすべてオンラインで実行時にエラーが報告され、弟は死亡しました。いろいろ探した結果、ようやく方法を見つけました。
リーリーコードを読む必要はありません。中の文を見てください: $td = mcrypt_module_open( MCRYPT_3DES, '', MCRYPT_MODE_CBC, ''); エラーを報告したのは彼です。
多くの解決策を検索しましたが、正しい方法は次のとおりです(Windowsシステムのみ):
このエラーは、php を実行しているサーバー側に libmcrypt.dll がない場合に、復号化に関数 mcrypt_module_open を使用すると発生します。
問題を解決するには、サーバー上で次の設定を行ってください。
インターネットにアクセスして、PHP mcrypt モジュールのインストール パッケージをダウンロードします。必要なのは libmcrypt.dll ファイルのみです (通常は公式 Web サイトからダウンロードされ、すでに PHP ディレクトリにあります)。
1. libmcrypt.dllをphpインストールディレクトリの下のsystem32ディレクトリまたはextensionsディレクトリにコピーします。
2. libmcrypt.dllをApacheインストールディレクトリのbinディレクトリにコピーします
3. Windows ディレクトリで php.ini ファイルを見つけて開きます
4. ロード可能な拡張機能 (モジュール) が存在するディレクトリを検索します。
extension_dir = "./" 例: extension_dir = "D:php5ext"
これらの 2 行は、extension_dir が指すディレクトリで libmcrypt.dll が見つかるか、システム パスに libmcrypt.dll が存在することを確認する必要があります
5. Windows Extensions 項目の下にある ;extension=php_mcrypt.dll 行と ;extension=php_iconv.dll 行を見つけて、先頭のセミコロンを削除します