Comment vérifier l'existence d'une propriété dans les objets et classes PHP ?

DDD
Libérer: 2024-10-29 21:22:02
original
975 Les gens l'ont consulté

 How do you verify the existence of a property in PHP objects and classes?

Vérification de l'existence des propriétés dans les objets et classes PHP

PHP ne prend pas en charge nativement une vérification de variable d'objet pure. Cette question explore les méthodes permettant de déterminer si une propriété existe dans un objet ou une classe PHP.

Fonction Property_exists()

La fonction property_exists() accepte deux paramètres : la classe nom ou instance d'objet et le nom de la propriété à vérifier. Si la propriété existe dans la cible spécifiée, la fonction renvoie vrai, sinon faux.

Exemple :

<code class="php">$ob = (object) array('a' => 1, 'b' => 12); 

if (property_exists($ob, 'a')) {
    echo "Property 'a' exists in the object.";
}</code>
Copier après la connexion

Fonction Isset()

La fonction isset() peut également être utilisée pour vérifier l'existence d'une propriété. Cependant, notez qu'il renverra false si la propriété est explicitement définie sur null.

Exemple :

<code class="php">$ob->a = null;
if (isset($ob->a)) {
    echo "Property 'a' exists in the object, but is set to null.";
} else {
    echo "Property 'a' does not exist in the object.";
}</code>
Copier après la connexion

Différence entre property_exists() et isset()

property_exists() vérifie l'existence d'une propriété déclarée, quelle que soit sa valeur. isset() vérifie à la fois l'existence de la propriété et si la valeur n'est pas nulle.

Exemple démontrant la différence :

<code class="php">class Foo {
   public $bar = null;
}

$foo = new Foo();

var_dump(property_exists($foo, 'bar')); // true
var_dump(isset($foo->bar)); // false</code>
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!