Heim > Artikel > Backend-Entwicklung > PHP7 Windows fügt benutzerdefinierte Erweiterungen hinzu und kompiliert PHP-Quellcode
PHP7-Windows fügt benutzerdefinierte Erweiterungen hinzu und kompiliert PHP-Quellcode
Erforderliche Materialien
Empfohlenes Tutorial:php7-Tutorial
① Bestimmen Sie die Version, die kompiliert werden muss, überprüfen Sie PHPINFO, bestimmen Sie die PHP-Version, die VC-Version und die PHP-Bitnummer. Laden Sie das entsprechende Visual Studio oder den Compiler entsprechend der PHP VC-Version herunter. Die Blogger-Version im Bild unten ist VC15. Sie müssen die Visual Studio 2017-Version herunterladen
② Vorbereiten den PHP-Quellcode entsprechend Ihren eigenen Bedürfnissen. Der Download der erweiterten Version entspricht der WINDOWS-Quellcode-Download-Adresse (https://windows.php.net/download/)
③ Laden Sie das PHP-sdk-Paket herunter (klicken Sie auf zum Herunterladen) (https://github.com/microsoft /php-sdk-binary-tools)
④Sie müssen PHP lokal verfügbar haben und die Umgebungsvariablen konfigurieren
⑤Nach dem Speichern des Downloads PHP-sdk, konfigurieren Sie das /bin-Verzeichnis Umgebungsvariablen
Vorgang starten
① Führen Sie das Verarbeitungsskript entsprechend der Version aus. Der Blogger ist VC15 X64, also führen Sie PHP aus -sdk-vc15-x64.bat, wenn es nicht heruntergeladen wird. Entsprechend der VC-Version von Visual Studio und dem Compiler blinkt das Verarbeitungsskript nur und wird dann beendet.
Führen Sie das Verarbeitungsskript erfolgreich aus
②Führen Sie den Befehl phpsdk_buildtree phpdev aus. phpdev kann ihn nach Ihren Wünschen ändern ( nur ein Name). Nach der Ausführung erstellt das Skript phpsdk_buildtree einen Pfad basierend auf der aktuell verwendeten VC++-Version und wechselt in das neu erstellte Verzeichnis
. Dort wird sich ein Ordner „deps“ befinden Ignorieren Sie es vorerst und legen Sie den von uns vorbereiteten PHP-Quellcode in das Verzeichnis derselben Ebene wie deps ab.
Geben Sie das dekomprimierte PHP-Quellcodeverzeichnis ein und führen Sie phpsdk_deps -u aus Um das Abhängigkeitspaket und die Netzwerkgeschwindigkeit herunterzuladen, können Freunde, die zu langsam sind, diesen Schritt überspringen
③Eine benutzerdefinierte PHP-Erweiterung hinzufügen
Geben Sie den Quellcode/die Erweiterung ein und suchen Sie nach ext_skel_win32.php. Hinweis: PHP7. 3-Version verfügt nicht über diese Datei, Sie können sie direkt ext_skel verwenden
PHP7.3-Version kann verwendet werden
PHP7.2 ist schwieriger, da Windows es nicht direkt ausführen kann, sodass Sie ein Tool herunterladen müssen, um es auszuführen. Der Blogger hat den LINUX-Befehlssatz installiert, sodass dies möglich ist Es kann auch von Freunden ausgeführt werden, die es nicht installiert haben
Nach erfolgreicher Ausführung befindet sich dieser Ordner unter /ext
Wir müssen ihn nur ändern my_test.c und config.m4, ein Programmkörper und eine KonfigurationsdateiGeben Sie my_test.c ein und finden Sie die Funktion im Bild unten
Dann wir kann Ihre Logik schreiben
Nach Abschluss beginnen wir mit der Kompilierung (Hinweis: Bei der Kompilierung handelt es sich um das mit VC geöffnete CMD, nicht um das CMD, in dem wir ext_skel_win32.php ausführen. Wenn Sie beendet haben , Sie können zur Eingabe erneut auf VC15-x64.bat klicken. Natürlich kann PHP7.3 dies ignorieren)
Geben Sie das Stammverzeichnis des Quellcodes ein und führen Sie buildconf aus
Configure --help ausführen
Die PHP7.2-Version wird bestimmte kleinere Probleme haben, wir öffnen die Konfiguration. js-Datei
Eine andere Lösung
Öffnen Sie die config.w32 des Erweiterungsquellcodes, suchen Sie den // Andernfalls verwenden Sie den Kommentar ARG_ENABLE, löschen Sie ihn und führen Sie buildconf erneut aus
Nach erfolgreichem Vorgang sehen Sie die von uns erstellte Erweiterung
Führen Sie configure --disable-all --enable-cli --enablie-my_test=shared aus. Wenn shared nicht hinzugefügt wird, wird keine DLL-Datei kompiliert
Sie können sehen, dass unsere Erweiterung gleich startet
Führen Sie nmake aus, um die Kompilierung zu starten
Erfolgreich kompilieren Nach der Eingabe (der Blogger ist X64, wenn Sie 32-Bit kompilieren, ist es
Es ist nicht erforderlich, aufzuschreiben, wie die Erweiterung PHP verwendet wird. Wenn jedoch Probleme auftreten Mit der Erweiterung können Sie nmake clean ausführen, neu kompilieren und verwenden. Sollten weiterhin Probleme auftreten, bedeutet dies, dass die von Ihnen ausgewählte kompilierte Version nicht mit der von Ihnen verwendeten PHP-Version übereinstimmt.Das obige ist der detaillierte Inhalt vonPHP7 Windows fügt benutzerdefinierte Erweiterungen hinzu und kompiliert PHP-Quellcode. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!