1. Fonction PHP Jugez si la fonction existe
Lorsque nous avons créé une fonction personnalisée et découvert la fonction variable Utilisation : Afin de garantir que la fonction appelée par le programme existe, function_exists est souvent utilisé pour déterminer si la fonction existe. Le même method_exists peut être utilisé pour détecter si une méthode de classe existe.
function func() { } if (function_exists('func')){ echo 'exists'; }
Si la classe est définie, vous pouvez utiliser class_exists
class MyClass{ } // 使用前检查类是否存在 if (class_exists('MyClass')) { $myclass = new MyClass(); }
Il existe de nombreuses méthodes de vérification de ce type en PHP, par exemple si le fichier existe file_exists, etc.
$filename = 'test.txt'; if (!file_exists($filename)) { echo $filename . ' not exists.'; }
2. Fonctions variables des fonctions PHP
La fonction dite variable signifie appeler une fonction via la valeur d'une variable. Parce que la valeur d'une variable est variable, elle peut être appelée. en changeant la valeur d'une variable différentes fonctions. Il est souvent utilisé dans les fonctions de rappel, les listes de fonctions ou pour appeler différentes fonctions basées sur des paramètres dynamiques. La méthode pour appeler une fonction variable consiste à ajouter des parenthèses au nom de la variable.
function name() { echo 'jobs'; } $func = 'name'; $func(); //调用可变函数
Les fonctions variables peuvent également être utilisées pour appeler des méthodes sur des objets
class book { function getName() { return 'bookname'; } } $func = 'getName'; $book = new book(); $book->$func();
Les méthodes statiques peuvent également être appelées dynamiquement via des variables
$func = 'getSpeed'; $className = 'Car'; echo $className::$func(); //动态调用静态方法
Méthodes Static In , la pseudo-variable $this ne peut pas être utilisée. Vous pouvez utiliser self, parent, static pour appeler des méthodes et propriétés statiques en interne.
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();
3. Fonctionnalités avancées des classes et des objets PHP
Comparaison d'objets, lorsque tous les attributs de deux instances de la même classe sont égaux, vous pouvez utiliser Opérateur de comparaison == est utilisé pour juger lorsque vous devez juger si deux variables sont des références au même objet, vous pouvez utiliser l'opérateur de congruence === pour juger.
class Car { } $a = new Car(); $b = new Car(); if ($a == $b) echo '=='; //true if ($a === $b) echo '==='; //false
Copie d'objet. Dans certains cas particuliers, vous pouvez copier un objet via le mot-clé clone. À ce moment, la méthode clone sera appelée. Les attributs sont définis via cette méthode magique <. 🎜> valeur.
class Car { public $name = 'car'; public function clone() { $obj = new Car(); $obj->name = $this->name; } } $a = new Car(); $a->name = 'new car'; $b = clone $a; var_dump($b);
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!