Dieser Artikel stellt hauptsächlich drei Möglichkeiten zur Implementierung von Kettenoperationen in PHP vor und analysiert die relevanten Implementierungstechniken und Verwendungsvorkehrungen von PHP-Kettenoperationen in Form von Beispielen. Weitere Informationen finden Sie unter
folgt:
Es gibt viele String-Funktionen in PHP. Beispielsweise müssen Sie zuerst die Leerzeichen am Ende des Strings filtern und dann seine Länge ermitteln:
strlen(trim($str))
Wenn Sie beispielsweise eine Kettenoperation ähnlich der in js implementieren möchten, wie sollten Sie sie wie folgt schreiben?
$str->trim()->strlen()
Es gibt drei Möglichkeiten, dies zu erreichen:
Methode 1. Verwenden Sie den magischen Funktionsaufruf wird mit call_user_func kombiniert, um
zu implementieren. Idee: Definieren Sie zuerst eine String-Klasse StringHelper, der Konstruktor weist den Wert direkt zu und ruft dann die Funktionen trim() und strlen() in a auf Kette, durch Verwenden Sie call_user_func in der aufgerufenen magischen Funktion __call(), um die aufrufende Beziehung zu verarbeiten. Die Implementierung ist wie folgt:
<?php class StringHelper { private $value; function __construct($value) { $this->value = $value; } function __call($function, $args){ $this->value = call_user_func($function, $this->value, $args[0]); return $this; } function strlen() { return strlen($this->value); } } $str = new StringHelper(" sd f 0"); echo $str->trim('0')->strlen();
Terminalausführungsskript:
php test.php 8
Methode 2. Verwenden Sie die magische Funktion __call kombiniert mit call_user_func_array, um
zu implementieren<?php class StringHelper { private $value; function __construct($value) { $this->value = $value; } function __call($function, $args){ array_unshift($args, $this->value); $this->value = call_user_func_array($function, $args); return $this; } function strlen() { return strlen($this->value); } } $str = new StringHelper(" sd f 0"); echo $str->trim('0')->strlen();
Beschreibung:
array_unshift(array,value1,value2,value3.. .) Mit der Funktion
array_unshift()
werden neue Elemente in ein Array eingefügt. Die Werte des neuen Arrays werden am Anfang des Arrays eingefügt.
call_user_func()
und call_user_func_array
sind beide Methoden zum dynamischen Aufrufen von Funktionen. Der Unterschied liegt in der Art und Weise, wie Parameter übergeben werden.
Methode drei: Verwenden Sie nicht die magische Funktion __call, um
zu implementieren. Ändern Sie einfach _call()
in die Funktion trim()
:
public function trim($t) { $this->value = trim($this->value, $t); return $this; }
Der entscheidende Punkt ist, dass der $this-Zeiger zurückgegeben wird, um den Aufruf der letztgenannten Funktion zu erleichtern.
Verwandte Empfehlungen:
Fragen Sie die PHP-Zeichenfolge ab, die bestimmte Daten enthält
Zeichen in PHP Drei Möglichkeiten, Strings auszudrücken
Häufig verwendete String-Funktionen in PHP
Das obige ist der detaillierte Inhalt vonDrei Möglichkeiten, Kettenoperationen in PHP zu implementieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Die Absolute -Sitzungs -Zeitlimit startet zum Zeitpunkt der Erstellung der Sitzung, während eine Zeitlimit in der Leerlaufsitzung zum Zeitpunkt der No -Operation des Benutzers beginnt. Das Absolute -Sitzungs -Zeitlimit ist für Szenarien geeignet, in denen eine strenge Kontrolle des Sitzungslebenszyklus erforderlich ist, z. B. finanzielle Anwendungen. Das Timeout der Leerlaufsitzung eignet sich für Anwendungen, die die Benutzer für lange Zeit aktiv halten, z. B. soziale Medien.

Der Serversitzungsausfall kann durch Befolgen der Schritte gelöst werden: 1. Überprüfen Sie die Serverkonfiguration, um sicherzustellen, dass die Sitzung korrekt festgelegt wird. 2. Überprüfen Sie die Client -Cookies, bestätigen Sie, dass der Browser es unterstützt und korrekt senden. 3. Überprüfen Sie die Speicherdienste wie Redis, um sicherzustellen, dass sie normal arbeiten. 4. Überprüfen Sie den Anwendungscode, um die korrekte Sitzungslogik sicherzustellen. Durch diese Schritte können Konversationsprobleme effektiv diagnostiziert und repariert werden und die Benutzererfahrung verbessert werden.

Session_Start () iscrucialinphPFormAnagingUSSERSIONS.1) ItinitiatesanewSessionifnoneExists, 2) Wiederaufnahmen und 3) setaSessionCookieforContinuityAcrossRequests, aktivierende Anwendungen wie

Das Festlegen des HTTPonly -Flags ist für Sitzungscookies von entscheidender Bedeutung, da es effektiv verhindern und die Informationen zur Benutzersitzung schützen kann. Insbesondere 1) Das Httponly -Flag verhindert, dass JavaScript auf Cookies zugreift, 2) Das Flag kann durch SetCookies eingestellt werden und in PHP und Flasche 3), obwohl es nicht von allen Angriffen von allen Angriffen verhindert werden kann, Teil der Gesamtsicherheitsrichtlinie sein sollte.

PhpSsionSsionSolvetheProblemofMaintainingStateAcrossmultipehttprequestsBoringDataontheserverandassociatingitittprequests.1) Sie starteten die Stundeataserver-Seite, typischerweise infileSordatabasen, undusaSasionIdinacookookookotenData

PHPSSIONS CANSTORESTRINGEN, ZUGNALTEN, ARRAYS, ANDOBjekte.1.

TostartaphpSession, useSession_start () atthescript'Sbeginning.1) PlaCEITBEFOREANYOUTPUTTOTHESESSIONSCOOKIE.2) useSsionsforuserDatalikeloginStatusOrShopingCarts

Die Sitzung der Sitzung bezieht sich auf die Generierung einer neuen Sitzungs -ID und die Ungültigmachung der alten ID, wenn der Benutzer sensible Vorgänge bei festgelegten Sitzungsangriffen ausführt. Die Implementierungsschritte umfassen: 1. Erkennen sensibler Vorgänge, 2. Erstellen neuer Sitzungs-ID, 3..


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

Dreamweaver CS6
Visuelle Webentwicklungstools

PHPStorm Mac-Version
Das neueste (2018.2.1) professionelle, integrierte PHP-Entwicklungstool

WebStorm-Mac-Version
Nützliche JavaScript-Entwicklungstools

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

Herunterladen der Mac-Version des Atom-Editors
Der beliebteste Open-Source-Editor
