Heim Backend-Entwicklung PHP8 Upgrade auf PHP 8 mit Homebrew auf dem Mac

Upgrade auf PHP 8 mit Homebrew auf dem Mac

Nov 27, 2020 am 10:09 AM
PHP 8

Dieser Artikel wurde übersetzt von: https://stitcher.io/blog/php-8-upgrade-mac

Upgrade mit Homebrew

Stellen Sie zunächst sicher, dass Brew auf dem neuesten Stand ist:

brew update

Weiter , aktualisieren Sie PHP:

brew upgrade php

Überprüfen Sie die aktuelle Version, indem Sie php -v:

php -v

ausführen. Starten Sie Nginx oder Apache neu:

sudo nginx -s reload
sudo apachectl restart

und stellen Sie sicher, dass Ihr lokaler Webserver auch PHP 8 verwendet, indem Sie auf das folgende Skript zugreifen:

# index.php, accessible to your web server
phpinfo();

The Version sollte 8.0.x anzeigen.

HINWEIS: Wenn Sie Laravel Valet verwenden, lesen Sie bitte weiter. Sie benötigen einige zusätzliche Schritte, damit Ihr Webserver ordnungsgemäß funktioniert.

Valet

Wenn Sie Laravel Valet verwenden, sollten Sie die folgenden Schritte ausführen, um es zu aktualisieren:

composer global update

Führen Sie jetzt die Valet-Installation aus:

valet install

Extensions

PHP verwendet pecl installiert . Persönlich verwende ich Imagick, Redis und Xdebug. Sie können wie folgt installiert werden:

pecl install imagick
pecl install redis
pecl install xdebug

Sie können pecl list ausführen, um zu sehen, welche Erweiterungen installiert sind:

pecl list
# Installed packages, channel pecl.php.net:
# =========================================
# Package Version State
# imagick 3.4.4   stable
# redis   5.1.1   stable
# xdebug  2.8.0   stable

Sie können mit der pecl-Suche nach anderen Erweiterungen suchen:

pecl search pdf
# Retrieving data...0%
# ..
# Matched packages, channel pecl.php.net:
# =======================================
# Package Stable/(Latest) Local
# pdflib  4.1.2 (stable)        Creating PDF on the fly with the PDFlib library

Stellen Sie nach der Installation des neuen Pakets sicher, dass Sie das Web neu starten Server:

sudo nginx -s reload
sudo apachectl restart

Wenn Sie Laravel Valet verwenden, sollten Sie es ebenfalls neu starten.

valet restart

Stellen Sie sicher, dass alle Erweiterungen korrekt installiert und geladen sind, indem Sie Ihren PHP-Webserver und die CLI-Installation überprüfen:

php -i | grep redis
var_dump(extension_loaded('redis'));

Wenn Ihre Erweiterungen nicht richtig geladen werden, gibt es zwei einfache Lösungen.

Stellen Sie zunächst sicher, dass Sie die Erweiterung zur richtigen INI-Datei hinzufügen. Sie können php --ini ausführen, um zu erfahren, welche Datei geladen wurde:

Configuration File (php.ini) Path: /usr/local/etc/php/7.4
Loaded Configuration File:         /usr/local/etc/php/7.4/php.ini
Scan for additional .ini files in: /usr/local/etc/php/7.4/conf.d
Additional .ini files parsed:      /usr/local/etc/php/7.4/conf.d/ext-opcache.ini,
/usr/local/etc/php/7.4/conf.d/php-memory-limits.ini

Überprüfen Sie nun die INI-Datei:

extension="redis.so"
extension="imagick.so"
zend_extension="xdebug.so"

Bitte beachten Sie, dass Sie nginx beim Ändern der INI nicht neu starten müssen, wenn Sie eine installierte Erweiterung über CLI testen Einstellungen, Apache oder Valet.

Wenn Sie von einer älteren PHP-Version aktualisieren möchten, die auch pecl zum Installieren von Erweiterungen verwendet, können Sie den zweiten Schritt tun. besteht darin, jede Erweiterung einzeln neu zu installieren.

pecl uninstall imagick
pecl install imagick

Letzter Schritt

Abschließend sollten Sie Ihr Projekt auf PHP 8-Kompatibilität testen und aktualisieren.

Weitere PHP8-bezogene Funktionen finden Sie in der speziellen Rubrik PHP8!

Das obige ist der detaillierte Inhalt vonUpgrade auf PHP 8 mit Homebrew auf dem Mac. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
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

Heiße KI -Werkzeuge

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Was ist statischer Rückgabetyp in PHP 8? Was ist statischer Rückgabetyp in PHP 8? Jun 24, 2025 am 12:57 AM

ThestaticReturnTypeinPhp8MeansthodisexpectToreturnaninStanceOftheClassit'Scalledon, einschließlich AnyChildClass.1.InTenableSlatestaticbinding, sicherstellen, dass Thereturnedvaluematchesthecallingclass'type.2.com Parparedtoselelf, was AlwaysRefererfestothedededededededededEfinineclass, und

Wie heißt Argumente in Php 8? Wie heißt Argumente in Php 8? Jun 19, 2025 pm 06:05 PM

NamedArgumentesinphp8AllowpassingValuestoafunctionBySpifizingTheParameternameInsteadofryingonParameterOrder.1.TheyimProveCereadabilityBy-MakingfunctionCallCall-Self-Dokumentation, Asseenexamplikeresimage (WidthTHTHH: 100, Höhe: 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, ups

Was sind Konstruktor -Immobilienförderung in PHP 8? Was sind Konstruktor -Immobilienförderung in PHP 8? Jun 19, 2025 pm 06:45 PM

ConstructorPropertypromotionInphp8AllowsAutomaticcreation und -AnssignmentofClassPropertiesDirectlyFromConstructorParameters

Was sind gemischte Typen in Php 8? Was sind gemischte Typen in Php 8? Jun 21, 2025 am 01:02 AM

Der gemischte Typ von PHP8 ermöglicht es Variablen, Parametern oder Rückgabewerten, jeden Typ zu akzeptieren. 1. gemischt ist für Szenarien geeignet, die eine hohe Flexibilität erfordern, z. B. Middleware, dynamische Datenverarbeitung und Legacy -Code -Integration. 2. Es unterscheidet sich von Gewerkschaftstypen, da es alle möglichen Typen abdeckt, einschließlich neuer Typen in der Zukunft. 3. Seien Sie vorsichtig, wenn Sie sie verwenden, um die Sicherheit des Typs zu vermeiden, und es wird empfohlen, die erwarteten Typen in Verbindung mit PHPDOC zu erklären. Die rationale Verwendung von gemischtem Umfang kann die Funktionen der Codexpression verbessern und gleichzeitig die Vorteile der Typ -Eingabeaufforderungen beibehalten.

Was ist JIT (Just-in-Time) -Kompilation in Php 8? Was ist JIT (Just-in-Time) -Kompilation in Php 8? Jun 20, 2025 am 12:57 AM

JitinPhp8imProveSperformanceBy CompilingFrequent executedCodeIntomachinecodeatruntime

Was sind Match -Ausdrücke in Php 8? Was sind Match -Ausdrücke in Php 8? Jun 21, 2025 am 01:03 AM

Der Match -Ausdruck von PHP8 bietet eine sauberere bedingte Kartierung durch einen strengen Vergleich. 1. Verwenden Sie strenge Gleichheit (===), um die Typumwandlung zu vermeiden. 2. Es ist keine Break -Erklärung erforderlich, um eine versehentliche Eindringung zu verhindern; 3. Direkter Rückgabewert kann Variablen zugewiesen werden. 4. Support Multi-Condition-Zusammenführungs- und Teilen von Ergebnissen. Geeignet für präzise Übereinstimmungs- und Zuordnungseingangs- und Ausgabeszenarien, wie z. B. die Verarbeitung von HTTP -Statuscode; Nicht für Reichweite oder losen Vergleiche geeignet.

Was sind die Leistungsverbesserungen in PHP 8 im Vergleich zu PHP 7? Was sind die Leistungsverbesserungen in PHP 8 im Vergleich zu PHP 7? Jun 27, 2025 am 12:51 AM

Die Leistungsverbesserung von PHP8 stammt hauptsächlich aus dem neu eingeführten JIT -Compiler- und Zend -Engine -Optimieren, aber die Vorteile in den tatsächlichen Anwendungen variieren je nach Szenario. 1. Der JIT-Compiler kompiliert einen Code in den Maschinencode zur Laufzeit und verbessert die Leistung von CLI-Skripten oder langfristigen APIs erheblich, wirkt sich jedoch nur begrenzte Auswirkungen auf kurzlebige Webanforderungen aus. 2. Opcache verbessert und verbessert Opcode -Caching- und Vorspannungsfunktionen, wodurch die Scheiben -I/A -Diskussion und das Parsen von Overhead, insbesondere für Frameworks wie Laravel oder Symfony, reduziert werden. 3.. Mehrere interne Optimierungen wie effizientere String- und Array -Operationen, kleinere Speicherverwendung usw. Obwohl jede Verbesserung gering ist, sammelt es sich in kleinen Mengen an. V.

Was sind Attribute (Anmerkungen) in Php 8? Was sind Attribute (Anmerkungen) in Php 8? Jun 22, 2025 am 12:54 AM

PHP8 -Attribute fügen Codeelemente durch strukturierte Methoden Metadaten hinzu. 1. Sie sind über Klassen, Methoden usw. mit #[] Syntax wie #[Route ('/home')] beigefügt, um Routen zu definieren; 2. Es ist sicherer als PHPDOC, wobei die Überprüfung von Typen und Kompilieren der Kompilierung ist. 3. Die benutzerdefinierten Attribute müssen Klassen definieren und anwenden, z. 4. In Frameworks wird üblicherweise zur Behandlung von Routing, Überprüfung, ORM -Zuordnung und anderen Aufgaben, Verbesserung der Code -Lesbarkeit und der Trennung logischer Konfigurationen verwendet; 5. Es kann durch Reflexion zugegriffen werden, aber übermäßiger Gebrauch sollte vermieden werden, um zu vermeiden, dass die Klarheit der Code beeinträchtigt wird.

See all articles