ホームページ >バックエンド開発 >PHPの問題 >PHPをコンパイルした後に拡張機能を追加できますか?

PHPをコンパイルした後に拡張機能を追加できますか?

angryTom
angryTomオリジナル
2019-10-29 17:35:543429ブラウズ

PHPをコンパイルした後に拡張機能を追加できますか?

#php のコンパイル後に拡張機能を追加できますか?

拡張機能を追加できますか?

php 自体は、curl、gmp、mbstring などの多くの拡張機能を提供します。 php をコンパイルしてインストールするときに、すべての拡張機能がインストールされるわけではありません。では、PHP をインストールした後、PHP 拡張機能を個別にインストールしたい場合はどうすればよいでしょうか?拡張機能を個別に追加する方法を説明するために、curl 拡張モジュールのインストールを例に挙げます。

手順: 1. PHP ソース コードの拡張ディレクトリを入力します。この例では、ソース コードの対応するディレクトリは次のとおりです:

/search/src/php-7.0.14/ext

2. モジュール ディレクトリを入力します。curl 拡張機能をインストールしたので、curl ディレクトリに入ります。この時点のディレクトリは


/search/src/php-7.0.14/ext/curl

3 ですので、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: 320151012

4. ./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 --ini

8. 次のコマンドを実行して、インストールが成功したかどうかを確認します


php -m | grep curl

curl が表示されたら、おめでとうございます。インストールは成功しました!


注: fpm、Apache などを使用して php を実行している場合。対応する php.ini を変更した後、新しい拡張機能を有効にするには、fpm または Apache を再起動する必要があります。

PHP 関連の詳細については、

PHP 中国語 Web サイトをご覧ください。

以上がPHPをコンパイルした後に拡張機能を追加できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。