Heim >Backend-Entwicklung >PHP-Problem >Können Erweiterungsfunktionen hinzugefügt werden, nachdem PHP kompiliert wurde?

Können Erweiterungsfunktionen hinzugefügt werden, nachdem PHP kompiliert wurde?

angryTom
angryTomOriginal
2019-10-29 17:35:543430Durchsuche

Können Erweiterungsfunktionen hinzugefügt werden, nachdem PHP kompiliert wurde?

Können Erweiterungen hinzugefügt werden, nachdem PHP kompiliert wurde?

Können Erweiterungen hinzugefügt werden?

PHP selbst bietet viele Erweiterungen wie Curl, GMP, MBString usw. Beim Kompilieren und Installieren von PHP werden möglicherweise nicht alle Erweiterungen installiert. Was soll ich also nach der Installation von PHP tun, wenn ich eine PHP-Erweiterung separat installieren möchte? Wir nehmen die Installation des Curl-Erweiterungsmoduls als Beispiel, um zu veranschaulichen, wie Erweiterungen separat hinzugefügt werden.

Schritte:
1. Geben Sie das Erweiterungsverzeichnis des PHP-Quellcodes ein. In diesem Beispiel lautet das meinem Quellcode entsprechende Verzeichnis wie folgt:

/search/src/php-7.0.14/ext

2. Geben Sie das Modulverzeichnis ein. Wir haben die Curl-Erweiterung installiert, also geben Sie das Curl-Verzeichnis ein. Zu diesem Zeitpunkt ist das Verzeichnis, in dem wir uns befinden,

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

3. Führen Sie phpize aus. Beachten Sie: Wenn Sie mehrere PHP-Versionen auf Ihrem Computer haben, stellen Sie sicher, dass Sie phpize entsprechend der PHP-Version ausführen, auf der Sie die Erweiterung installieren möchten. Ich habe zum Beispiel sowohl PHP7 als auch PHP5.3.3 auf meinem Rechner. Ich bereite derzeit die Installation der Curl-Erweiterung für PHP7 vor. Führen Sie also phpize

/usr/local/php7.0/bin/phpize

entsprechend php7 aus und das Ergebnis wird ähnlich sein:

Configuring for:
PHP Api Version: 20151012
Zend Module Api No: 20151012
Zend Extension Api No: 320151012

4. Führen Sie ./configure

./configure --with-php-config=/usr/local/php7.0/bin/php-config

aus. Hinweis: Wenn es nur eines gibt Wenn Sie die PHP-Version auf Ihrem Computer installieren, ist es in den meisten Fällen nicht erforderlich, –with-php-config speziell zu verwenden, um den Speicherort der entsprechenden PHP-Konfiguration anzugeben.

5. Führen Sie make aus, und dann wird die Datei „curl.so“ im Verzeichnis ./modules/ generiert

6. Führen Sie make install aus

Das Ergebnis ist ähnlich:

Installing shared extensions: /usr/local/php7.0/lib/php/20151012/

Das Ausführungsergebnis sagt Ihnen, in welchem ​​Verzeichnis curl.so installiert ist.

Im Allgemeinen gilt: Wenn Sie php-config korrekt angeben oder Ihr Computer nur über eine PHP-Version verfügt, wird diese korrekt im Erweiterungsverzeichnis des entsprechenden PHP installiert. Wenn nach der Ausführung von „make install“ im Verzeichnis „extension_dir“ kein entsprechendes „so“ vorhanden ist, können Sie die in Schritt 5 generierte „so“-Datei manuell kopieren.

Um das spezifische Erweiterungsverzeichnis anzuzeigen, können Sie den folgenden Befehl ausführen.

php -i| grep extension_dir

Das Ergebnis ähnelt

extension_dir => /usr/local/php7.0/lib/php/20151012/ => /usr/local/php7.0/lib/php/20151012/

7. Fügen Sie

extension=curl.so

zu php.ini hinzu, wenn Sie den genauen Speicherort von php.ini nicht kennen , Sie können es mit dem folgenden Befehl überprüfen

php --ini

8. Führen Sie den folgenden Befehl aus, um zu überprüfen, ob die Installation erfolgreich war

php -m | grep curl

Wenn Sie Curl sehen, herzlichen Glückwunsch, der Die Installation ist erfolgreich!

Hinweis: Wenn Sie FPM, Apache usw. zum Ausführen von PHP verwenden. Nachdem Sie die entsprechende php.ini geändert haben, müssen Sie fpm oder Apache neu starten, damit die neue Erweiterung wirksam wird

Weitere PHP-bezogene Kenntnisse finden Sie auf der PHP-Chinese-Website!

Das obige ist der detaillierte Inhalt vonKönnen Erweiterungsfunktionen hinzugefügt werden, nachdem PHP kompiliert wurde?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn