#php のコンパイル後に拡張機能を追加できますか?
拡張機能を追加できますか? php 自体は、curl、gmp、mbstring などの多くの拡張機能を提供します。 php をコンパイルしてインストールするときに、すべての拡張機能がインストールされるわけではありません。では、PHP をインストールした後、PHP 拡張機能を個別にインストールしたい場合はどうすればよいでしょうか?拡張機能を個別に追加する方法を説明するために、curl 拡張モジュールのインストールを例に挙げます。 手順: 1. PHP ソース コードの拡張ディレクトリを入力します。この例では、ソース コードの対応するディレクトリは次のとおりです:
/search/src/php-7.0.14/ext2. モジュール ディレクトリを入力します。curl 拡張機能をインストールしたので、curl ディレクトリに入ります。この時点のディレクトリは
/search/src/php-7.0.14/ext/curl3 ですので、phpize を実行します。マシン上に複数の PHP バージョンがある場合は、拡張機能をインストールする予定の PHP バージョンに対応する phpize を必ず実行してください。たとえば、私のマシンには php7 と php5.3.3 の両方がインストールされています。現在、php7用のcurl拡張機能をインストールする準備をしています。したがって、php7 に対応する phpize
/usr/local/php7.0/bin/phpizeを実行します。結果は次のようになります:
Configuring for: PHP Api Version: 20151012 Zend Module Api No: 20151012 Zend Extension Api No: 3201510124. ./configure
./configure --with-php-config=/usr/local/php7.0/bin/php-configを実行します。 注: php が 1 つしかない場合マシン上のバージョンを指定する場合、ほとんどの場合、対応する php-config の場所を示すために特に –with-php-config を使用する必要はありません。 5. make を実行すると、curl.so ファイルが ./modules/ ディレクトリに生成されます 6. make install を実行します結果は次のようになります。
Installing shared extensions: /usr/local/php7.0/lib/php/20151012/実行結果から、curl.so がどのディレクトリにインストールされているかがわかります。 通常、php-config を正しく指定した場合、またはマシンに php バージョンが 1 つしかない場合、対応する php の extension_dir に正しくインストールされます。 make install を実行した後、extension_dir ディレクトリに対応する so がない場合は、手順 5 で生成された so ファイルを手動で cp できます。 特定の extension_dir を表示するには、次のコマンドを実行します。
php -i| grep extension_dir結果は
extension_dir => /usr/local/php7.0/lib/php/20151012/ => /usr/local/php7.0/lib/php/20151012/7 と同様です。
extension=curl.soを php.ini に追加します。php.ini の具体的な場所がわからない場合は、次のコマンドで確認できます
php --ini8. 次のコマンドを実行して、インストールが成功したかどうかを確認します
php -m | grep curlcurl が表示されたら、おめでとうございます。インストールは成功しました!
PHP 中国語 Web サイトをご覧ください。
以上がPHPをコンパイルした後に拡張機能を追加できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。