


PHP5-Autorisierungsprogrammierung, Lesestudiennotizen mit E-Book-Download_php-Grundlagen
PHP 5 Power Programming PDF-Download-Adresse /books/28207.html
In PHP4 wird __construct() nicht als Name des Konstruktors verwendet, und die Klasse muss verwendet werden Der Name definiert eine Methode, genau wie in C++.
In PHP5 wird eine neue einheitliche Konstruktor-Benennungsmethode verwendet: __construct() Natürlich ist es auch möglich, Klassennamen zu verwenden.
Wenn Sie jedoch beide gleichzeitig verwenden, verwendet das System standardmäßig __construct().
Klassenperson {
//Methode in PHP4
öffentliche Funktion Person(){
echo „Methode in PHP4“
}
//Methode empfohlen in PHP5
öffentliche Funktion __construct(){
echo „Empfohlene Methode für PHP5“;
public function say(){
}
$p1=new Person();
?> 🎜>
Sie können im Konstruktor keinen Wert zurückgeben, daher besteht die häufigste Methode zum Generieren eines Fehlers im Konstruktor darin, eine Ausnahme auszulösen.
Der Code lautet wie folgt:
public function __construct($age){
try {
if ($age<120){
$this- >_age=$age ;
}else {
throw new Exception("Das von Ihnen eingegebene Alter ist zu alt");
}catch (Exception $e){
echo $e->getMessage( );
}
}
$p1=new Person(121);
Zugriffskontrolle
Zugriffsschutz auf Objektattribute ist ein Schlüsselparadigma von OOP
Öffentlich: Zugriff überall möglich
Privat: Auf Klassenmitglieder kann nur über Methoden innerhalb des Objekts der Klasse, in der sie sich befinden, zugegriffen werden, nicht jedoch über Mitglieder der geerbten Klasse. Da private Mitglieder nicht vererbt werden, können zwei verwandte Klassen eine private Variable mit demselben Namen deklarieren. Das heißt, beide Klassen können nur ihre eigenen privaten Eigenschaften sehen und es besteht keine Beziehung zwischen privaten Mitgliedern. Beispiel:
Code kopieren
public $public = 'Public'
protected $protected = 'Protected'; Privat';
function printHello()
{
echo $this->public;
echo $this->private; }
}
$obj = new MyClass();
echo $obj->public; // Diese Zeile kann normal ausgeführt werden
echo $obj->protected; erzeugt einen schwerwiegenden Fehler
echo $obj->private // Diese Zeile erzeugt auch einen schwerwiegenden Fehler
$obj->printHello(/) Ausgabe öffentlich, geschützt und privat
/ **
* Definiere MyClass2
*/
class MyClass2 erweitert MyClass
{
// Öffentlich und geschützt können neu definiert werden, aber privat kann nicht
geschützt werden $protected = 'Protected2';
function printHello ( )
{
echo $this->public;
echo $this->private; $ obj2 = new MyClass2();
echo $obj->public; // Diese Zeile kann normal ausgeführt werden
echo $obj2->private; // private ist nicht definiert
echo $obj2 -> ;protected; // Diese Zeile erzeugt einen schwerwiegenden Fehler
$obj2->printHello(); // Ausgabe öffentlich, geschützt2, aber nicht privat
Hinweis: in der Klasse Methoden müssen mit den Schlüsselwörtern public, protected oder private definiert werden. Wenn diese Schlüsselwörter nicht festgelegt sind, wird die Methode auf die Standard-Öffentlichkeit festgelegt.
Statische Methode
Die statische Methode kann über die Methode „class name::static“ aufgerufen werden, ohne eine Objektinstanz zu erstellen, oder sie kann in einer Objektinstanz über die Methode „$this->static“ oder aufgerufen werden self: :Statische aufzurufende Methode.
Code kopieren
Klasse Foo
{
public static $my_static = 'foo';
Objekt klonen
Wenn in PHP4 ein neues Objekt zurückgegeben wird, wird das Objekt selbst zurückgegeben.
Wenn ein Objekt neu ist, wird das Objekt zurückgegeben, auf das gezeigt wird. Handle“
Das bedeutet, dass in PHP5 beim Zuweisen einer Objektinstanz ($obj1) zu einer anderen Variablen ($obj2) beide Objekte auf denselben Speicherbereich verweisen.
Zum Beispiel:
php
class test{
public $str;}
$obj1=new test();
$obj2= $ obj1;
$obj2->str="obj2";
echo $obj1->str;//wird „obj1“ ausgeben
Weil $ obj1 und $ obj2 zeigen auf denselben Speicherbereich. Wenn also ein Objekt zum Ändern des Werts einer Mitgliedsvariablen verwendet wird, wirkt sich dies auf das andere Objekt aus.
Aber manchmal müssen wir eine Kopie eines Objekts erstellen (zwei unabhängige Speicherbereiche). Zu diesem Zeitpunkt können Sie den Sprachbefehl clone verwenden
Code kopieren
$obj1=new test();
$obj1->str="
$obj2= clone $obj1; "obj2";
echo $obj1->str;//wird "obj2" ausgeben
parent:: und self::
self:: zeigt auf die aktuelle Klasse und wird normalerweise für den Zugriff auf statische Elemente, Methoden und Konstanten verwendet.
parent:: zeigt auf die übergeordnete Klasse und wird häufig zum Aufrufen des Konstruktors und der Methoden der übergeordneten Klasse verwendet Klasse und kann auch verwendet werden, um auf Mitglieder der übergeordneten Klasse und Konstanten zuzugreifen.
Beispiel:
Code kopieren
“;
class Son erweitert Father {
public function __construct(){
parent::__construct();//Methode 1
// Vater::__construct();//Methode 2
echo "Rufen Sie den Konstruktor der Unterklasse auf";
}
}
$son=new Son();
?>
Ergebnis:
Aufruf des Konstruktors der übergeordneten Klasse
Aufruf Für die Funktion
wird aus den oben genannten Gründen der Konstruktor der Unterklasse Methode 1 empfohlen.
Code kopieren
public $name=__CLASS__;
}
function checkIfRectangle($shape){
if ($shape Instanz von Rechteck ){
echo $shape->name; }else {
echo „Dieses Objekt ist keine Instanz der Rechteckklasse“; Circle());/ /Ausgabe: Das Objekt ist keine Instanz der Rechteckklasse
?>
Hinweis: __CLASS__ ist eine spezielle Konstante, die zum Speichern des Namens der aktuellen Klasse verwendet wird

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

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

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

Die Unterschiede zwischen PHP5 und PHP8 bestehen in Bezug auf Leistung, Sprachstruktur, Typsystem, Fehlerbehandlung, asynchrone Programmierung, Standardbibliotheksfunktionen und Sicherheit. Detaillierte Einführung: 1. Leistungsverbesserung: PHP8 führt einen JIT-Compiler ein, der einige hochfrequente Ausführungscodes kompilieren und optimieren kann, wodurch die Ausführungsgeschwindigkeit verbessert wird. PHP8 führt einige neue Sprachstrukturen und Funktionen ein. PHP8 unterstützt benannte Parameter, sodass Entwickler Parameternamen anstelle der Parameterreihenfolge usw. übergeben können.

So ändern Sie Port 80 in PHP5: 1. Bearbeiten Sie die Portnummer in der Apache-Serverkonfigurationsdatei. 2. Bearbeiten Sie die PHP-Konfigurationsdatei, um sicherzustellen, dass PHP auf dem neuen Port funktioniert. 3. Starten Sie den Apache-Server neu Beginnen Sie mit der Ausführung auf dem neuen Port.

Lösungsschritte für PHP5, das Port 9000 nicht überwacht: 1. Überprüfen Sie die PHP-FPM-Konfigurationsdatei. 2. Starten Sie den PHP-FPM-Dienst neu. 3. Schalten Sie die Firewall aus oder konfigurieren Sie die Portweiterleitung. 4. Überprüfen Sie, ob andere Prozesse Port 9000 belegen.

Die Syntaxunterschiede zwischen PHP7 und PHP5 sind: 1. PHP7 führt strikte Typdeklarationen ein, während der Typ von PHP5-Variablen implizit ist. 2. PHP7 führt Unterstützung für Skalartypdeklarationen ein, PHP5 jedoch nicht. 3. PHP7 führt den NULL-Merge-Operator ein PHP5 prüft, ob eine Variable existiert und nicht null ist. Sie müssen eine bedingte Anweisung verwenden. 4. PHP7 fügt einen neuen Vergleichsoperator „<=>“ hinzu, PHP5 führt jedoch keine neue Funktion ein, während PHP5 nicht.

Zu den Unterschieden zwischen der Version von PHP 7 und 5 gehören Leistungsverbesserungen, Skalartypdeklarationen, Rückgabewerttypdeklarationen, Verbesserungen bei der Ausnahmebehandlung, anonyme Klassen, Syntaxverbesserungen, neue Operatoren, verbesserte Fehlerbehandlung und die Entfernung einiger alter Funktionen. Detaillierte Einführung: 1. Leistungsverbesserung: PHP7 führt eine neue Zend-Engine mit dem Namen Zend Engine 3.0 ein. Die Leistung von PHP7 ist etwa doppelt so hoch wie die von PHP5, hauptsächlich durch verbesserte Speicherverwaltung, optimierte Funktionsaufrufe und Ausnahmebehandlung , verbesserte Speicherbereinigung usw.

Bei der Verwendung von PHP5 kann es bei einigen Benutzern vorkommen, dass Port 9000 nicht abgehört werden kann. Zu diesem Zeitpunkt müssen wir einige Konfigurations- und Fehlerbehebungsarbeiten durchführen, um dieses Problem zu lösen.

Wenn Sie ein Website-Administrator sind, kann es vorkommen, dass Sie den PHP5-Port vom Standardport 80 ändern müssen. Dieser Vorgang kann etwas eilig sein, aber solange Sie die folgenden Schritte befolgen, wird er problemlos abgeschlossen.

PHP ist eine weit verbreitete serverseitige Programmiersprache zur Entwicklung dynamischer Websites und Anwendungen. In den letzten Jahren hat die Veröffentlichung von PHP7 einige Aufmerksamkeit erregt. PHP7 weist gegenüber früheren Versionen (z. B. PHP5) viele Verbesserungen und Optimierungen auf. In diesem Artikel werden wir die Syntaxunterschiede zwischen PHP7 und PHP5 untersuchen.
