このエラーが発生し続けます
Mcrypt PHP拡張機能が必要
composer update
を実行した後の下部:
私はMacを使用しているので、実行しようとしました:
brew search mcrypt brew install php56-mcrypt
それでも同じエラーメッセージが表示されます。
次のコマンドを実行してこれを解決しました
brew update
brew upgrade
brew tap homebrew/dupes
brew tap josegonzalez/homebrew-php
brew install php54-mcrypt
php --version // To Test your php
Sudo composer update
Mcryptの警告はもうありません!!
Loading composer repositories with package information
Updating dependencies (including require-dev)
Nothing to install or update
Generating autoload files
Generating optimized class loader
更新後:
brew update
brew upgrade
brew tap homebrew/dupes
brew tap josegonzalez/homebrew-php
Php5.6(またはそれ以降)をインストールしている場合、次のコマンドを使用して、brewで使用可能なバージョンを確認できます。
$ brew search mcrypt
homebrew/php/php53-mcrypt homebrew/php/php55-mcrypt homebrew/php/php70-mcrypt mcrypt
homebrew/php/php54-mcrypt homebrew/php/php56-mcrypt homebrew/php/php71-mcrypt
私の場合、php7.0を使用しています。
$ brew install php70-mcrypt
オンmacOS High Sierra私はこの手順を実行しました:
1-パッケージを検索:
brew search mcrypt
結果:
==>ローカルタップを検索しています... homebrew/php/php71-mcrypt mcrypt homebrew/php/php53-mcrypt
homebrew/php/php54-mcrypt homebrew/php/php55-mcrypt homebrew/php/php56-mcrypt homebrew/php/php70-mcrypt libtomcrypt
2-私のPHPバージョンを検索して、インストールする必要があるものを確認します。
php --version
結果:
PHP 7.1.7(cli)(構築日:2017年7月15日18:08:09)(NTS)Copyright(c)1997-2017 The PHP Group Zend Engine v3.1.0、Copyright(c )1998-2017 Zend Technologies
3-正しいパッケージをインストールします。私にとっては7.1.7 => homebrew/php/php71-mcryptでした
brew install homebrew/php/php71-mcrypt
4- find "mcrypt.so"拡張ファイルを見つける
find /usr/ -type f -name "mcrypt.so"
結果:
検索:/usr//local/Cellar/php71-mcrypt/7.1.13_19/mcrypt.so
5- php.iniを検索する
php -i | grep 'Configuration File'
結果(存在する場合):
設定ファイル(php.ini)パス=>/etcロードされた設定ファイル=> /etc/php.ini
6- /etc/php.iniの最後に次の行を追加します(最後のステップで正しいパスを参照してください)拡張子mcrypt.so
extension=/usr/local/Cellar/php71-mcrypt/7.1.13_19/mcrypt.so
これでコマンドを実行できます。
行を追加する必要があります
extension=mcrypt.so
CLIを担当するphi.iniファイルでPHPバージョン。場所を確認するには、次を実行します。
php -i | grep 'Configuration File'
使用中[〜#〜] xampp [〜#〜]Macで、phpをインストールしてから、peclを使用してmcryptをコンパイルする必要がありました。その後mcrypt.soをXAMPPにコピーしました。
利用可能なリリースの実際のリストは次のとおりです。 http://pecl.php.net/package/mcrypt
コマンドは次のとおりです。
echo Install php...
brew install php
/usr/local/opt/php/bin/php -v
echo Correction of "error Connection to `ssl://pecl.php.net:443' failed"...
wget http://curl.haxx.se/ca/cacert.pem
Sudo cp cacert.pem /private/etc/ssl/cert.pem
Sudo mv cacert.pem /Applications/XAMPP/xamppfiles/share/openssl/cert.pem
/usr/local/opt/php/bin/pecl list-all
echo Compile and Install mcrypt.so...
Sudo /usr/local/opt/php/bin/pecl install mcrypt-1.0.1
peclのビルドプロセスの最後のメッセージ:
Build process completed successfully Installing '/usr/local/Cellar/php/7.2.7/pecl/20170718/mcrypt.so' install ok: channel://pecl.php.net/mcrypt-1.0.1 Extension mcrypt enabled in php.ini
build processのパスに基づいて、コンパイルしたmcrypt.soをXAMPPにコピーし、php.iniで拡張機能を有効にします。
Sudo cp /usr/local/Cellar/php/7.2.7/pecl/20170718/mcrypt.so /Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20170718/mcrypt.so
echo 'extension=mcrypt.so' >> /Applications/XAMPP/xamppfiles/etc/php.ini
動作するかどうかを確認します。
/Applications/XAMPP/bin/php -i | grep "mcrypt"
結果は次のとおりです。
mcrypt mcrypt support => enabled mcrypt_filter support => enabled mcrypt.algorithms_dir => no value => no value mcrypt.modes_dir => no value => no value
Apacheを再起動して、ブラウザを使用して動作することを確認してください。
多分それは誰かを助け、私は1つを勝ち取る親指を立てる。ありがとう