web-dev-qa-db-ja.com

未定義関数mcrypt_decrypt()の呼び出し-php5-mcryptがインストールされている場合でも

だから私はエラーの取得を止めることができません:

PHP Fatal error:  Call to undefined function mcrypt_decrypt() in 

Php5_mcryptがインストールされている場合でも、phpを何度も再インストールしましたが、機能しません。

より詳しい情報:

mandatory@mandatorys-box:~/Desktop/bots$ dpkg -l | grep php
ii  libapache2-mod-php5                       5.5.3+dfsg-1ubuntu2.1                      AMD64        server-side, HTML-embedded scripting language (Apache 2 module)
ii  php5                                      5.5.3+dfsg-1ubuntu2.1                      all          server-side, HTML-embedded scripting language (metapackage)
ii  php5-cli                                  5.5.3+dfsg-1ubuntu2.1                      AMD64        command-line interpreter for the php5 scripting language
ii  php5-common                               5.5.3+dfsg-1ubuntu2.1                      AMD64        Common files for packages built from the php5 source
ii  php5-curl                                 5.5.3+dfsg-1ubuntu2.1                      AMD64        CURL module for php5
ii  php5-json                                 1.3.1+dfsg-2                               AMD64        JSON module for php5
ii  php5-mcrypt                               5.4.6-0ubuntu3                             AMD64        MCrypt module for php5
ii  php5-mysql                                5.5.3+dfsg-1ubuntu2.1                      AMD64        MySQL module for php5
ii  php5-readline                             5.5.3+dfsg-1ubuntu2.1                      AMD64        Readline module for php5

問題が何であるかわからない、すべてを試してみました。

より詳しい情報:

mandatory@mandatorys-box:~/Desktop/bots$ php -v
PHP 5.5.3-1ubuntu2.1 (cli) (built: Dec 12 2013 04:24:35) 
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2013 Zend Technologies
    with Zend OPcache v7.0.3-dev, Copyright (c) 1999-2013, by Zend Technologies
10

インストールは一つのことです。有効化は別です。 /etc/php.iniファイルに次の行が含まれていることを確認してください。

extension=mcrypt.so

php.iniが見つからない場合は、次を含むtest.phpファイルを作成します。

<?php phpinfo(); ?>

php test.php | grep ".ini"で実行すると、iniファイルへのパスが見つかります。それらの1つには、上記のextension=行を含める必要があります。

25
John WH Smith

モジュールを有効にする必要がある場合があります。 Ubuntuシステムでは、php5-mcryptに同梱されているiniファイルを、PHPバイナリごとにconf.d使用する:

Sudo ln -s /etc/php5/conf.d/mcrypt.ini /etc/php5/cli/conf.d/mcrypt.ini
Sudo ln -s /etc/php5/conf.d/mcrypt.ini /etc/php5/cgi/conf.d/mcrypt.ini
9
Chris