Es gibt verschiedene Arten von PHP-Mitgliedern

青灯夜游
Freigeben: 2023-03-17 22:28:02
Original
3781 Leute haben es durchsucht

Es gibt drei Arten von PHP-Mitgliedern: 1. Mitgliedsattribute (Klassenattribute), bei denen es sich um in der Klasse definierte Variablen handelt, die zum Speichern von Daten in der Klasse verwendet werden. 2. Mitgliedsmethoden, bei denen es sich um in der Klasse definierte Funktionen handelt, die bereitgestellt werden Objekte Lösen Sie den Vorfall. 3. Klassenkonstanten sind in der Klasse definierte Konstanten und werden mit dem Schlüsselwort const definiert.

Es gibt verschiedene Arten von PHP-Mitgliedern

Die Betriebsumgebung dieses Tutorials: Windows 7-System, PHP 8-Version, DELL G3-Computer

1. Konzept

Klassenmitglieder beziehen sich auf eine Reihe von in der Klasse definierten Daten, sie sind direkt abhängig auf der ersten Ebene des Klassenmitglieds. Zu den Klassenmitgliedern gehören: Mitgliedsattribute, Mitgliedsmethoden und Klassenkonstanten.

  • Member-Attribute (Klassenattribute): In der Klasse definierte Variablen, die zum Speichern von Daten in der Klasse verwendet werden.

  • Member-Methoden: In der Klasse definierte Funktionen, die Objekten zur Auflösung von Ereignissen bereitgestellt werden.

  • Klassenkonstanten: In einer Klasse definierte Konstanten werden mit dem Schlüsselwort const definiert.

Eigenschaften und Methoden müssen beim Zugriff mit Zugriffsqualifizierungsmodifikatoren geändert werden.

Syntax:

class 类名{
 
        public $成员属性名[=成员属性值]; //成员属性可以只定义而不赋值,放在之后赋值。 
        [public] function 成员方法名(){
                   ... 
                 } 
        const 常量名=值; 
 
}
Nach dem Login kopieren

Die Mitgliedsattribute einer Klasse können ohne Zuweisung von Werten entsprechend der Situation in nachfolgenden logischen Operationen zugewiesen werden, sie müssen jedoch mit Zugriffsqualifizierungsmodifikatoren geändert werden Anzahl der Mitgliedsmethoden kann weggelassen werden, und wenn sie weggelassen wird, werden sie standardmäßig verwendet. Der Qualifikationsmodifikator wird später ausführlich erläutert.

2. Implementierungsschritte

Die Schritte zur Implementierung von Klassenmitgliedern erfordern auch eine Analyse der Geschäftslogik:

  • Deklarieren Sie die Klassenstruktur

  • Analysieren Sie, ob die Klasse Daten speichern muss, um festzustellen ob Mitgliedsattribute definiert werden sollen oder wie viele Mitgliedsattribute definiert sind

  • Analysieren Sie, ob die Klasse bestimmte Vorgänge ausführen muss, um zu bestimmen, ob Mitgliedsmethoden definiert werden sollen.

  • Analysieren Sie, ob Konstanten definiert werden müssen.

  • Objektinstanziierung muss zuerst die Klassenstruktur deklarieren:

    class devote{ }
    Nach dem Login kopieren
  • Dann müssen beim Einreichen von Nachrichten Daten gespeichert werden. Zuerst müssen der Nachrichtentitel und der Nachrichteninhalt gespeichert werden, und dann müssen die Informationen des Mitwirkenden gespeichert werden. E-Mail, Mobiltelefonnummer usw.
  • Wir speichern diese Daten über Mitgliedsattribute:

    class devote{
            public $nickname="投稿人";
            public $title="新闻标题";
            public $content="投稿内容";
            public $email="邮箱";
            public $phone="手机号"; 
    }
    Nach dem Login kopieren
  • Anschließend müssen Sie bei der Übermittlung von Nachrichten den Nachrichteninhalt filtern und unangemessene Wörter blockieren und ihn dann an die Datenbank senden, um den Entwurf zu speichern. warte auf eine Rezension.
class devote{
        public $nickname="投稿人";
        public $content="投稿内容";
        public $email="邮箱";
        public $phone="手机号";
        function clear($content){
                 //过滤新闻内容 
        }
        function input(){
         //提交到数据库 
        } 
}
Nach dem Login kopieren

Benötige ich Klassenkonstanten? Dies ist vorerst nicht erforderlich. Der nächste Schritt besteht darin, die Klasse zu instanziieren und dann die Mitglieder über das Objekt aufzurufen, um die Funktion zu implementieren.

$devote=new devote();
//实例化对象 
$devote->nickname="小杜"; 
$devote->title="一件大事"; 
$devote->content="我手机没电了"; 
$devote->email="2811051813@qq.com"; 
$devote->phone="就不告诉你"; 
$devote->clear($devote->content); 
$devote->input(); 
//通过调用成员实现业务
Nach dem Login kopieren

Bezüglich des Aufrufs von Klassenmitgliedern verwenden wir den Link -> Wie im obigen Beispiel gezeigt, lautet die Syntax zum Aufrufen von Klassenattributen:

$object->property name; Beim Aufruf des Attributnamens muss kein $-Symbol hinzugefügt werden. Beim Aufruf werden sie integriert. Beim Definieren von Attributen muss jedoch ein $-Symbol vorhanden sein, um die definierenden Variablen anzuzeigen.

Durch Aufrufen des Attributs wird der Wert des aktuellen Attributs abgerufen, und durch Zuweisen eines Werts wird dessen Wert geändert. Wenn das Titelattribut wie oben beschrieben direkt aufgerufen wird, lautet der erhaltene Wert „Nachrichtentitel“. Wenn Sie eine Eigenschaft neu zuweisen, ist der Wert, den Sie als nächstes erhalten, der Wert, der später zugewiesen wird, da die Klasseneigenschaft tatsächlich eine Variable ist.

Neuzuweisung entspricht:

$devote->title="一件大事"; 
//等同于: 
public $title="一件大事";
Nach dem Login kopieren

Aufrufen einer Klassenmethode:

$Object->Methodenname (Parameter)

Der Aufruf einer Klassenkonstante ist ein statischer Aufruf, der später ausführlich erläutert wird.

Sie können den obigen Inhalt visuell anzeigen, indem Sie das Objekt drucken:

class devote{
        public $nickname="投稿人"; 
        public $content="投稿内容"; 
        public $email="邮箱"; 
        public $phone="手机号"; 
        function clear($content){
         //过滤新闻内容 
        } 
        function input(){
         //提交到数据库 
        } 
} 
 
$devote=new devote(); 
var_dump($devote); 
//object(devote)#1 (4) { ["nickname"]=> string(9) "投稿人" ["content"]=> string(12) "投稿内容" ["email"]=> string(6) "邮箱" ["phone"]=> string(9) "手机号" }
Nach dem Login kopieren

Testen Sie es selbst. Sie können sehen, dass der Wert des Mitgliedsattributs der Standardwert ist, wenn Sie das Mitgliedsattribut über das Objekt neu zuweisen und dann drucken Objekt:

$devote->nickname="小杜"; 
$devote->title="一件大事"; 
$devote->content="我手机没电了"; 
$devote->email="2811051813@qq.com"; 
$devote->phone="就不告诉你"; 
$devote->clear($devote->content); 
$devote->input(); 
var_dump($devote);
Nach dem Login kopieren

Es ​​kann festgestellt werden, dass der Wert des Klassenattributs geändert wurde.

3. Mitgliedsoperationen

Die oben genannten Beispiele umfassen bereits Mitgliedsoperationen, d. h. den Zugriff auf Mitgliedsattribute und die Änderung von Mitgliedsattributen wurde oben demonstriert. Weitere Informationen finden Sie unter Operationen zum Hinzufügen von Attributen:

Um ein Mitgliedsattribut hinzuzufügen, rufen Sie einfach ein nicht vorhandenes Mitgliedsattribut direkt nach dem Objekt auf und weisen Sie einen Wert zu:

$devote->id=1; 
/*
 打印结果: object(devote)#1 (6) { ["nickname"]=> string(6) "小杜" ["content"]=> string(18) "我手机没电了" ["email"]=> string(17) "2811051813@qq.com" ["phone"]=> string(15) "就不告诉你" ["title"]=> string(12) "一件大事" ["id"]=> int(1) } 
*/
Nach dem Login kopieren

Nachdem Sie die obige Operation ausgeführt haben, wird eine neue Attribut-ID erstellt Der Klasse hinzugefügt und ein Wert von 1 zugewiesen. Auf diesen Wert kann später auch direkt über das Objekt zugegriffen werden:

echo $devote->id; //输出1
Nach dem Login kopieren

Der direkte Aufruf einer nicht vorhandenen Eigenschaft meldet keinen Fehler, aber ihr Wert ist NULL.

var_dump($devote->ids); //NULL
Nach dem Login kopieren

Um ein Klassenattribut zu löschen, verwenden Sie die unset-Methode:

unset($devote->id); 
var_dump($devote->id); 
//NULL
Nach dem Login kopieren
Das über das Objekt betriebene Klassenattribut wird nur unter dem aktuellen Objekt wirksam:
$devote->age=18; 
$dv=new devote(); 
var_dump($dv); 
//object(devote)#2 (4) { ["nickname"]=> string(9) "投稿人" ["content"]=> string(12) "投稿内容" ["email"]=> string(6) "邮箱" ["phone"]=> string(9) "手机号" }
Nach dem Login kopieren

Die Methodenoperation ruft nur eine Operation auf, nämlich die Mitgliedsmethode von Die Klasse kann nur über das Objekt aufgerufen werden:

$devote->input();
Nach dem Login kopieren

Hinweis: Klassenmitglieder können in einer Klasse unbegrenzt definiert werden, aber eine Klasse kann nur Klassenattribute, Klassenmethoden und Klassenkonstanten enthalten. Es kann keine andere Syntax in geschrieben werden Klasse.

class Test{
        echo 1234; 
        var_dump("错误"); 
        if($a==1){ echo "True"; } 
} 
//syntax error, unexpected 'echo' (T_ECHO), expecting function (T_FUNCTION) or const (T_CONST)
Nach dem Login kopieren

Empfohlenes Lernen: „

PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonEs gibt verschiedene Arten von PHP-Mitgliedern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
php
Quelle:php.cn
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage