Was bedeutet PHP-Unterstrich?
Ein Unterstrich in PHP steht für private Variablen und private Methoden, und zwei Unterstriche sind in PHP integrierte Variablen. PHP legt beispielsweise fest, dass Methoden, die mit zwei Unterstrichen beginnen, als magische Methoden reserviert sind. Daher wird empfohlen, dass Ihre Funktionsnamen dies nicht tun Beginnen Sie mit __ , es sei denn, es geht darum, eine vorhandene magische Methode zu überladen.
Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP-Version 7.1, DELL G3-Computer
Was bedeutet der PHP-Unterstrich?
Die Bedeutung von Variablen, die in PHP mit einem Unterstrich beginnen
Benennung Regeln
Eins hinzufügen Für privat
ist das Hinzufügen von zwei im Allgemeinen die Systemstandardeinstellung und wird vom System vordefiniert, dh das sogenannte:
================= =====
„Magische“ Methoden“ und „Magische Konstanten“
======================
★PHP-Konstanten, die mit beginnen und enden Doppelte Unterstriche sind „magische Konstanten“:
__LINE_ _Die aktuelle Zeilennummer in der Datei.
__FILE__Der vollständige Pfad und Dateiname der Datei.
__DIR__Das Verzeichnis, in dem sich die Datei befindet. Bei Verwendung innerhalb einer eingebundenen Datei wird das Verzeichnis zurückgegeben, in dem sich die eingebundene Datei befindet. Es entspricht dirname(__FILE__). Sofern es sich nicht um das Stammverzeichnis handelt, enthält der Name im Verzeichnis keinen abschließenden Schrägstrich
Hinweis: Der obige Inhalt stammt aus „PHP Chinese Manual->Language Reference->Constant->Magic Constant“.
Ab PHP5 und späteren Versionen können PHP-Klassen magische Methoden verwenden.
PHP legt fest, dass Methoden, die mit zwei Unterstrichen (__) beginnen, als magische Methoden reserviert sind. Daher wird empfohlen, dass Ihr Funktionsname nicht mit __ beginnt, es sei denn, er soll eine vorhandene magische Methode überladen.
Die magischen Methoden in PHP sind: __construct, __destruct, __call, __callStatic, __get, __set, __isset, __unset, __sleep, __wakeup, __toString, __set_state, __clone, __autoload
1, __get, __set
Diese beiden Methoden sind entworfen für Eigenschaften, die nicht in Klassen und ihren Superklassen deklariert sind
__get( $property ) Diese Methode wird ausgelöst, wenn eine undefinierte Eigenschaft aufgerufen wird, und übergibt den Namen der Eigenschaft, auf die zugegriffen wird
__set ($property, $value) Beim Zuweisen eines Werts zu Wenn es sich um eine undefinierte Eigenschaft handelt, werden bei dieser Methode der festgelegte Eigenschaftsname und der Wert angegeben, bei dem die Zugriffskontrolle geschützt ist Zugriffserlaubnis).
2, __isset, __unset
__isset( $property ) Diese Methode wird aufgerufen, wenn die Funktion isset() für eine undefinierte Eigenschaft aufgerufen wird
__unset( $property ) Wenn unset() für eine undefinierte Eigenschaft aufgerufen wird. Diese Methode ist Wird während einer Funktion aufgerufen
Das Gleiche wie die __get-Methode und die __set-Methode. Die hier nicht deklarierten Attribute umfassen geschützte und private Attribute (d. h. Attribute ohne Zugriffsberechtigung), wenn sie mit einem Objekt aufgerufen werden
3 __call( $method, $arg_array ) Diese Methode wird aufgerufen, wenn eine undefinierte Methode aufgerufen wird
Die undefinierten Methoden hier umfassen Methoden, die keine Zugriffsberechtigung haben; wenn die Methode nicht vorhanden ist, gehen Sie zur übergeordneten Klasse, um die Methode zu finden. Wenn die übergeordnete Klasse nicht vorhanden ist, rufen Sie die Methode __call() dieser Klasse auf. Wenn die Methode __call() in dieser Klasse nicht vorhanden ist, wechseln Sie zur Methode __call() der übergeordneten Klasse
4. __autoload
__autoload Funktion, die automatisch aufgerufen wird, wenn versucht wird, eine Klasse zu verwenden, die noch nicht definiert wurde. Durch den Aufruf dieser Funktion hat die Skript-Engine eine letzte Chance, die erforderlichen Klassen zu laden, bevor PHP mit einem Fehler abstürzt.
Wenn Sie eine globale Autoloading-Klasse definieren möchten, müssen Sie die Methode spl_autoload_register() verwenden, um die Verarbeitungsklasse in der PHP-Standardbibliothek zu registrieren:
<?php class Loader { static function autoload_class($class_name) { //寻找正确的$class_name类,并引入,没有则抛出异常 } } /** * 设置对象的自动载入 * spl_autoload_register — Register given function as __autoload() implementation */ spl_autoload_register(array('Loader', 'autoload_class')); $a = new Test();//Test没用require就实例化,实现自动加载,很多框架就用这种方法自动加载类 ?>
Hinweis: In der __autoload-Funktion ausgelöste Ausnahmen können nicht vom Catch-Anweisungsblock abgefangen werden und einen schwerwiegenden Fehler verursachen, daher sollte er in der Funktion selbst abgefangen werden.
5, __construct, __destruct
__construct Konstruktormethode, diese Methode wird aufgerufen, wenn ein Objekt erstellt wird. Der Vorteil der Verwendung dieser Methode im Vergleich zu PHP4 besteht darin, dass die Konstruktormethode unabhängig vom Namen der Klasse einen eindeutigen Namen haben kann Wenn Sie also den Namen der Klasse ändern, müssen Sie den Namen der Konstruktormethode nicht ändern. PHP ruft diese Methode auf, bevor das Objekt zerstört wird , bevor es aus dem Speicher gelöscht wird). Standardmäßig gibt PHP nur den von Objekteigenschaften belegten Speicher frei und zerstört objektbezogene Ressourcen. Mit dem Destruktor können Sie beliebigen Code ausführen, um den Speicher nach der Verwendung eines Objekts zu löschen. Wenn PHP entscheidet, dass Ihr Skript nicht mehr mit dem Objekt verknüpft ist, wird der Destruktor aufgerufen.
Im Namensraum einer Funktion geschieht dies, wenn die Funktion zurückkehrt.
Bei globalen Variablen geschieht dies am Ende des Skripts.
Wenn Sie ein Objekt explizit zerstören möchten, können Sie der Variablen, die auf das Objekt zeigt, einen beliebigen anderen Wert zuweisen oder unset 6, __clone
Object-Zuweisung verwenden Wenn Sie ein Objekt kopieren möchten, müssen Sie die Klonmethode verwenden. Wenn diese Methode aufgerufen wird, ruft das Objekt automatisch die magische Methode __clone auf. Wenn beim Kopieren des Objekts einige Initialisierungsvorgänge ausgeführt werden müssen in der __clone-Methode.
7. Die Methode __toString
__toString wird automatisch aufgerufen, wenn ein Objekt in einen String konvertiert wird, beispielsweise wenn Echo zum Drucken des Objekts verwendet wird.
Wenn die Klasse diese Methode nicht implementiert, kann das Objekt nicht über Echo gedruckt werden, andernfalls wird Folgendes angezeigt: Abfangbarer schwerwiegender Fehler: Das Objekt des Klassentests konnte in nicht in einen String konvertiert werden
Diese Methode muss einen String zurückgeben.
Vor PHP 5.2.0 kann die __toString-Methode nur wirksam werden, wenn sie in Verbindung mit echo() oder print() verwendet wird. Nach PHP 5.2.0 kann es in jeder String-Umgebung wirksam werden (z. B. über printf() unter Verwendung des Modifikators %s), kann jedoch nicht in Nicht-String-Umgebungen verwendet werden (z. B. unter Verwendung des Modifikators %d). Wenn ab PHP 5.2.0 ein Objekt, das die Methode __toString nicht definiert, in einen String konvertiert wird, wird ein E_RECOVERABLE_ERROR-Fehler gemeldet.
8, __sleep, __wakeup
__sleep Verwenden Sie beim Serialisieren
__wakeup. Rufen Sie beim Deserialisieren
serialize() auf, um zu überprüfen, ob es in der Klasse eine Funktion mit dem magischen Namen __sleep gibt. Wenn dies der Fall ist, wird die Funktion vor der Serialisierung ausgeführt. Es löscht das Objekt und sollte ein Array zurückgeben, das die Namen aller Variablen im Objekt enthält, die serialisiert werden sollen.
Der Zweck der Verwendung von __sleep besteht darin, alle Datenbankverbindungen des Objekts zu schließen, ausstehende Daten zu übermitteln oder ähnliche Bereinigungsaufgaben durchzuführen. Darüber hinaus ist diese Funktion nützlich, wenn Sie sehr große Objekte haben, die nicht vollständig eingelagert werden müssen.
Im Gegensatz dazu prüft unserialize() die Existenz einer Funktion mit dem magischen Namen __wakeup. Diese Funktion kann alle Ressourcen rekonstruieren, über die das Objekt verfügt, sofern vorhanden.
Der Zweck der Verwendung von __wakeup besteht darin, alle Datenbankverbindungen wiederherzustellen, die möglicherweise während der Serialisierung verloren gegangen sind, und andere Neuinitialisierungsaufgaben zu erledigen.
9. __set_state
Wenn var_export() aufgerufen wird, wird diese statische Methode aufgerufen (gültig seit PHP 5.1.0).
Der einzige Parameter dieser Methode ist ein Array, das Klasseneigenschaften enthält, die im Array-Format angeordnet sind („Eigenschaft“ => Wert, …).
10. __invoke
Beim Versuch, ein Objekt durch Aufrufen einer Funktion aufzurufen, wird die __invoke-Methode automatisch aufgerufen.
PHP5.3.0 und höher sind gültig
11. __callStatic
Es funktioniert ähnlich wie die magische Methode __call(), __callStatic() dient der Verarbeitung statischer Methodenaufrufe,
PHP5.3.0 und höher ist gültig
PHP Indeed Strengthened die Definition der Methode __callStatic(); sie muss öffentlich sein und als statisch deklariert werden. Ebenso muss die magische Methode __call() wie alle anderen magischen Methoden als öffentlich definiert werden.
Empfohlenes Lernen: „PHP-Video-Tutorial“
Das obige ist der detaillierte Inhalt vonWas bedeutet PHP-Unterstrich?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

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

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an veralteten und entfernten Funktionen. In dieser Anleitung wird erklärt, wie Sie PHP 8.4 installieren oder auf PHP 8.4 auf Ubuntu, Debian oder deren Derivaten aktualisieren. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, ist die Installation aus einem APT-Repository wie unten erläutert oft schneller und sicherer, da diese Repositorys in Zukunft die neuesten Fehlerbehebungen und Sicherheitsupdates bereitstellen.

Wenn Sie ein erfahrener PHP-Entwickler sind, haben Sie möglicherweise das Gefühl, dass Sie dort waren und dies bereits getan haben. Sie haben eine beträchtliche Anzahl von Anwendungen entwickelt, Millionen von Codezeilen debuggt und eine Reihe von Skripten optimiert, um op zu erreichen

Visual Studio Code, auch bekannt als VS Code, ist ein kostenloser Quellcode-Editor – oder eine integrierte Entwicklungsumgebung (IDE) –, die für alle gängigen Betriebssysteme verfügbar ist. Mit einer großen Sammlung von Erweiterungen für viele Programmiersprachen kann VS Code c

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.

Eine Zeichenfolge ist eine Folge von Zeichen, einschließlich Buchstaben, Zahlen und Symbolen. In diesem Tutorial wird lernen, wie Sie die Anzahl der Vokale in einer bestimmten Zeichenfolge in PHP unter Verwendung verschiedener Methoden berechnen. Die Vokale auf Englisch sind a, e, i, o, u und sie können Großbuchstaben oder Kleinbuchstaben sein. Was ist ein Vokal? Vokale sind alphabetische Zeichen, die eine spezifische Aussprache darstellen. Es gibt fünf Vokale in Englisch, einschließlich Großbuchstaben und Kleinbuchstaben: a, e, ich, o, u Beispiel 1 Eingabe: String = "TutorialPoint" Ausgabe: 6 erklären Die Vokale in der String "TutorialPoint" sind u, o, i, a, o, ich. Insgesamt gibt es 6 Yuan

Dieses Tutorial zeigt, wie XML -Dokumente mit PHP effizient verarbeitet werden. XML (Extensible Markup-Sprache) ist eine vielseitige textbasierte Markup-Sprache, die sowohl für die Lesbarkeit des Menschen als auch für die Analyse von Maschinen entwickelt wurde. Es wird üblicherweise für die Datenspeicherung ein verwendet und wird häufig verwendet

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.

Was sind die magischen Methoden von PHP? Zu den magischen Methoden von PHP gehören: 1. \ _ \ _ Konstrukt, verwendet, um Objekte zu initialisieren; 2. \ _ \ _ Destruct, verwendet zur Reinigung von Ressourcen; 3. \ _ \ _ Call, behandeln Sie nicht existierende Methodenaufrufe; 4. \ _ \ _ GET, Implementieren Sie den dynamischen Attributzugriff; 5. \ _ \ _ Setzen Sie dynamische Attributeinstellungen. Diese Methoden werden in bestimmten Situationen automatisch aufgerufen, wodurch die Code -Flexibilität und -Effizienz verbessert werden.
