Inhaltsverzeichnis
Anfänger von Hack
{$hello}
Heim Backend-Entwicklung PHP-Tutorial HHVM und Hack - können wir erwarten, dass sie PHP ersetzen?

HHVM und Hack - können wir erwarten, dass sie PHP ersetzen?

Feb 22, 2025 am 09:56 AM

HHVM and Hack - Can We Expect Them to Replace PHP?

Kernpunkte

  • Die von Facebook entwickelten HHVM (Virtual Machine) und Hack -Programmiersprachen sollen die Ausführungsgeschwindigkeit und die Speichereffizienz von PHP verbessern. halbiert.
  • Hack ist eine verbesserte Version der PHP -Sprache. Es ist vollständig HHVM -kompatibel und wird auf alle Produktionsserver auf Facebook angewendet.
  • Hack führt Sammelstypen wie Vector und MAP ein, die die gleiche Funktionalität wie PHP-Arrays aufweisen, aber eine freundlichere objektorientierte Schnittstelle bietet. Es unterstützt auch Lambda -Ausdrücke, die Abkürzung von Schließungen.
  • Das Typ -System von
  • Hack ist so konzipiert, dass Programmierfehler frühzeitig erfasst und schnellere Code generiert werden. Es wird statisch getippt, unterstützt Skalartypen und unterstützt die generische Programmierung, wodurch die Erstellung dedizierter Arrays und benutzerdefinierter Typen ermöglicht wird.

Facebook begann 2008 mit der Entwicklung von HipHop für PHP. Ihr Ziel ist es, die PHP -Ausführung zu beschleunigen, und die erste Version des Projekts besteht aus HPHPC/HPHPI. HPHPC ist ein PHP -C -Wandler für den Bereitstellen von Code für Produktionsserver, während HPHPI ein Dolmetscher ist, das während der Entwicklung und der Debugging -Phasen verwendet wird.

HPC leistet einen großartigen Job bei der Verbesserung der Leistung, aber es ist nicht ohne Probleme: HPHPC- und HPHPI -synchronisiert zu halten, ist sehr umständlich, und es gibt immer noch einige Unterschiede zwischen dem konvertierten Code und dem erklärten Code. Aus diesem Grund hat Facebook im Jahr 2010 beschlossen, einen anderen Ansatz zu verfolgen und HHVM zu erstellen, eine neue virtuelle Maschine, die den von PHP verwendeten Zend -Engine ersetzt. Bis Ende 2012 war die Leistung von HHVM mit früheren HPHPC vergleichbar und übertraf es schnell.

HHVM ist entwickelt, um die Kompatibilität und eine optimale Leistung mit Zend -Engine -Funktionen gleichzeitig zu erzielen. Facebook behauptet, dass nach dem Umschalten von PHP APC auf HHVM die Geschwindigkeit um 3 bis 10 Mal erhöht wurde und die Speicherverwendung um die Hälfte reduziert wurde. Natürlich hängt es wirklich von der Anwendung ab (die 10 -fache Erhöhung ist die Codebasis für Facebook). Dieser Artikel konzentriert sich nicht auf Kompatibilität oder Leistung, da bereits eine große Anzahl von Ressourcen verfügbar sind. Sie können sich das HHVM -Blog ansehen oder nach "HHVM -Benchmark" suchen. Weitere Informationen zu HipHop und HHVM finden Sie im vorherigen SitePoint -Artikel.

Stattdessen konzentriert sich dieser Artikel auf Hack, eine verbesserte Version der PHP -Sprache zur Verbesserung der Sicherheit, Leistung und Entwicklungseffizienz. Bitte beachten Sie, dass HHVM sowohl Hack als auch PHP unterstützt. Obwohl Hack auf allen Produktionsservern von Facebook verwendet wurde, sind derzeit nur wenige Informationen durchgesickert. Kurz gesagt, Hack ist der Php6 von Facebook - es wurde entwickelt, um die meisten aktuellen PHP -Probleme zu beheben und gleichzeitig einige neue Funktionen wie statisches Tippen hinzuzufügen.

Anfänger von Hack

Zu diesem Zeitpunkt wurden nicht alle Tools und Dokumente veröffentlicht. Der neueste HHVM -Quellcode unterstützt jedoch bereits Hack. Sie können die Vagrant Virtual Machine installieren, um mit Hack zu experimentieren und das Code -Snippet in diesem Artikel auszuführen:

# 确保你的机器上已安装Vagrant
$ git clone https://github.com/vicb/hhvm-vagrant.git
$ cd hhvm-vagrant
$ vagrant up
Nach dem Login kopieren
Jetzt können Sie Ihr erstes Hack -Programm schreiben:

<?hh require "/vagrant/www/xhp/php-lib/init.php";

$hello = "Hello HACK!";

echo <html><title>{$hello}!</title><h1 id="hello">{$hello}</h1></body></html>;
Nach dem Login kopieren
... (Der nachfolgende Inhalt ähnelt dem Originaltext, mit der Ausnahme, dass der Satz Synonyme ersetzt wird und die Anpassungen der Satzstruktur durchgeführt werden, um die ursprüngliche Bedeutung unverändert zu halten) ....

Das obige ist der detaillierte Inhalt vonHHVM und Hack - können wir erwarten, dass sie PHP ersetzen?. 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

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.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

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)

Erklären Sie JSON Web Tokens (JWT) und ihren Anwendungsfall in PHP -APIs. Erklären Sie JSON Web Tokens (JWT) und ihren Anwendungsfall in PHP -APIs. Apr 05, 2025 am 12:04 AM

JWT ist ein offener Standard, der auf JSON basiert und zur sicheren Übertragung von Informationen zwischen Parteien verwendet wird, hauptsächlich für die Identitätsauthentifizierung und den Informationsaustausch. 1. JWT besteht aus drei Teilen: Header, Nutzlast und Signatur. 2. Das Arbeitsprinzip von JWT enthält drei Schritte: Generierung von JWT, Überprüfung von JWT und Parsingnayload. 3. Bei Verwendung von JWT zur Authentifizierung in PHP kann JWT generiert und überprüft werden, und die Funktionen und Berechtigungsinformationen der Benutzer können in die erweiterte Verwendung aufgenommen werden. 4. Häufige Fehler sind Signaturüberprüfungsfehler, Token -Ablauf und übergroße Nutzlast. Zu Debugging -Fähigkeiten gehört die Verwendung von Debugging -Tools und Protokollierung. 5. Leistungsoptimierung und Best Practices umfassen die Verwendung geeigneter Signaturalgorithmen, das Einstellen von Gültigkeitsperioden angemessen.

Wie funktioniert die Session -Entführung und wie können Sie es in PHP mildern? Wie funktioniert die Session -Entführung und wie können Sie es in PHP mildern? Apr 06, 2025 am 12:02 AM

Die Hijacking der Sitzung kann in den folgenden Schritten erreicht werden: 1. Erhalten Sie die Sitzungs -ID, 2. Verwenden Sie die Sitzungs -ID, 3. Halten Sie die Sitzung aktiv. Zu den Methoden zur Verhinderung der Sitzung der Sitzung in PHP gehören: 1. Verwenden Sie die Funktion Session_regenerate_id (), um die Sitzungs -ID zu regenerieren. 2. Store -Sitzungsdaten über die Datenbank, 3. Stellen Sie sicher, dass alle Sitzungsdaten über HTTPS übertragen werden.

Was sind Aufzählungen (Enums) in PHP 8.1? Was sind Aufzählungen (Enums) in PHP 8.1? Apr 03, 2025 am 12:05 AM

Die Aufzählungsfunktion in Php8.1 verbessert die Klarheit und Type des Codes, indem benannte Konstanten definiert werden. 1) Aufzählungen können Ganzzahlen, Zeichenfolgen oder Objekte sein, die die Lesbarkeit der Code und die Type der Type verbessern. 2) Die Aufzählung basiert auf der Klasse und unterstützt objektorientierte Merkmale wie Traversal und Reflexion. 3) Die Aufzählung kann zum Vergleich und zur Zuordnung verwendet werden, um die Sicherheit der Typ zu gewährleisten. 4) Aufzählung unterstützt das Hinzufügen von Methoden zur Implementierung einer komplexen Logik. 5) Strenge Typ Überprüfung und Fehlerbehandlung können häufig auftretende Fehler vermeiden. 6) Die Aufzählung verringert den magischen Wert und verbessert die Wartbarkeit, achten Sie jedoch auf die Leistungsoptimierung.

Beschreiben Sie die soliden Prinzipien und wie sie sich für die PHP -Entwicklung anwenden. Beschreiben Sie die soliden Prinzipien und wie sie sich für die PHP -Entwicklung anwenden. Apr 03, 2025 am 12:04 AM

Die Anwendung des soliden Prinzips in der PHP -Entwicklung umfasst: 1. Prinzip der Einzelverantwortung (SRP): Jede Klasse ist nur für eine Funktion verantwortlich. 2. Open and Close Principle (OCP): Änderungen werden eher durch Erweiterung als durch Modifikation erreicht. 3.. Lischs Substitutionsprinzip (LSP): Unterklassen können Basisklassen ersetzen, ohne die Programmgenauigkeit zu beeinträchtigen. 4. Schnittstellen-Isolationsprinzip (ISP): Verwenden Sie feinkörnige Schnittstellen, um Abhängigkeiten und nicht verwendete Methoden zu vermeiden. 5. Abhängigkeitsinversionsprinzip (DIP): Hoch- und niedrige Module beruhen auf der Abstraktion und werden durch Abhängigkeitsinjektion implementiert.

Wie debugge ich den CLI -Modus in PhpStorm? Wie debugge ich den CLI -Modus in PhpStorm? Apr 01, 2025 pm 02:57 PM

Wie debugge ich den CLI -Modus in PhpStorm? Bei der Entwicklung mit PHPSTORM müssen wir manchmal den PHP im CLI -Modus (COMS -Zeilenschnittstellen) debuggen ...

Wie sende ich eine Postanforderung mit JSON -Daten mithilfe der Curl -Bibliothek von PHP? Wie sende ich eine Postanforderung mit JSON -Daten mithilfe der Curl -Bibliothek von PHP? Apr 01, 2025 pm 03:12 PM

Senden von JSON -Daten mithilfe der Curl -Bibliothek von PHP in der PHP -Entwicklung müssen häufig mit externen APIs interagieren. Eine der gängigen Möglichkeiten besteht darin, die Curl Library zu verwenden, um Post � ...

Erklären Sie die späte statische Bindung in PHP (statisch: :). Erklären Sie die späte statische Bindung in PHP (statisch: :). Apr 03, 2025 am 12:04 AM

Statische Bindung (statisch: :) implementiert die späte statische Bindung (LSB) in PHP, sodass das Aufrufen von Klassen in statischen Kontexten anstatt Klassen zu definieren. 1) Der Analyseprozess wird zur Laufzeit durchgeführt.

See all articles