Heim > Backend-Entwicklung > PHP-Tutorial > Zusammenfassung von Funktionen und Klassen, die in PHP leicht übersehen werden

Zusammenfassung von Funktionen und Klassen, die in PHP leicht übersehen werden

伊谢尔伦
Freigeben: 2023-03-11 16:16:01
Original
1007 Leute haben es durchsucht

1. PHP-Funktion Beurteilen Sie, ob die Funktion existiert

Als wir eine benutzerdefinierte Funktion erstellt und etwas über die Variablenfunktion erfahren haben: Um sicherzustellen, dass die vom Programm aufgerufene Funktion vorhanden ist, wird function_exists häufig verwendet, um festzustellen, ob die Funktion vorhanden ist. Dieselbe method_exists kann verwendet werden, um zu erkennen, ob eine Klassenmethode vorhanden ist.

function func() {
}
if (function_exists('func')){
 echo 'exists';
}
Nach dem Login kopieren

Ob die Klasse definiert ist, kann class_exists verwenden

class MyClass{
}
// 使用前检查类是否存在
if (class_exists('MyClass')) {
 $myclass = new MyClass();
}
Nach dem Login kopieren

Es gibt viele solcher Prüfmethoden in PHP, z. B. ob die Datei existiert, file_exists usw.

$filename = 'test.txt';
if (!file_exists($filename)) {
 echo $filename . ' not exists.';
}
Nach dem Login kopieren

2. Variablenfunktionen von PHP-Funktionen

Die sogenannte Variablenfunktion bedeutet den Aufruf einer Funktion über den Wert einer Variablen. Da der Wert einer Variablen variabel ist, kann er aufgerufen werden durch Ändern des Werts einer Variablen. Es wird häufig in Rückruffunktionen, Funktionslisten oder zum Aufrufen verschiedener Funktionen basierend auf dynamischen Parametern verwendet. Die Methode zum Aufrufen einer Variablenfunktion besteht darin, dem Variablennamen Klammern hinzuzufügen.

function name() {
 echo 'jobs';
}
$func = 'name';
$func(); //调用可变函数
Nach dem Login kopieren

Variablenfunktionen können auch zum Aufrufen von Methoden für Objekte verwendet werden

class book {
 function getName() {
  return 'bookname';
 }
}
$func = 'getName';
$book = new book();
$book->$func();
Nach dem Login kopieren

Statische Methoden können auch dynamisch über Variablen aufgerufen werden

$func = 'getSpeed';
$className = 'Car';
echo $className::$func(); //动态调用静态方法
Nach dem Login kopieren

Statische In-Methoden , darf die Pseudovariable $this nicht verwendet werden. Sie können self, parent und static verwenden, um statische Methoden und Eigenschaften intern aufzurufen.

class Car {
 private static $speed = 10;
 
 public static function getSpeed() {
  return self::$speed;
 }
 
 public static function speedUp() {
  return self::$speed+=10;
 }
}
class BigCar extends Car {
 public static function start() {
  parent::speedUp();
 }
}
BigCar::start();
echo BigCar::getSpeed();
Nach dem Login kopieren

3. Erweiterte Funktionen von PHP-Klassen und -Objekten

Objektvergleich: Wenn alle Attribute zweier Instanzen derselben Klasse gleich sind, können Sie den Vergleichsoperator <🎜 verwenden >== wird zur Beurteilung verwendet. Wenn Sie beurteilen müssen, ob zwei Variablen auf dasselbe Objekt verweisen, können Sie zur Beurteilung den Kongruenzoperator === verwenden.

class Car {
}
$a = new Car();
$b = new Car();
if ($a == $b) echo &#39;==&#39;; //true
if ($a === $b) echo &#39;===&#39;; //false
Nach dem Login kopieren
Kopieren von Objekten über das Schlüsselwort clone. Zu diesem Zeitpunkt werden die Attribute über diese

magische Methode < aufgerufen 🎜>Wert.

class Car {
 public $name = &#39;car&#39;;
 
 public function clone() {
  $obj = new Car();
  $obj->name = $this->name;
 }
}
$a = new Car();
$a->name = &#39;new car&#39;;
$b = clone $a;
var_dump($b);
Nach dem Login kopieren
Objektserialisierung

, Sie können das Objekt über die Serialisierungsmethode, die zum Speichern oder Übertragen von Daten verwendet wird, in eine Zeichenfolge serialisieren und die Zeichenfolge dann bei Bedarf durch Deserialisieren deserialisieren es in ein Objekt umwandeln und verwenden.

Das obige ist der detaillierte Inhalt vonZusammenfassung von Funktionen und Klassen, die in PHP leicht übersehen werden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
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