Maison  >  Article  >  développement back-end  >  Le nouvel opérateur de coalescence des nuls en PHP7 : Comment simplifier l'opération de détection des nuls du code ?

Le nouvel opérateur de coalescence des nuls en PHP7 : Comment simplifier l'opération de détection des nuls du code ?

WBOY
WBOYoriginal
2023-10-25 10:26:02771parcourir

Le nouvel opérateur de coalescence des nuls en PHP7 : Comment simplifier lopération de détection des nuls du code ?

Le nouvel opérateur de coalescence nulle en PHP7 : Comment simplifier l'opération de détection nulle du code ?

Lors du développement d'applications PHP, vous rencontrez souvent des situations où une détection nulle est requise, comme l'obtention des données de formulaire saisies par l'utilisateur, l'obtention de données à partir des résultats d'une requête de base de données, etc. La méthode d'écriture précédente nécessitait souvent l'utilisation de l'opérateur ternaire ou de la fonction isset() pour le jugement. Le code semblait long et pas assez concis. Dans PHP7, un nouvel opérateur de fusion nul ?? est ajouté, ce qui peut simplifier l'opération de détection nulle du code et améliorer la lisibilité et la maintenabilité du code. isset()函数来进行判断,代码看起来冗长而且不够简洁。而在PHP7中,新增了一个空合并运算符??,它能够简化代码的判空操作,提高代码的可读性和可维护性。

具体来说,空合并运算符??用于判断一个变量是否为空,如果为空则返回一个默认值。它的语法如下:

$value = $variable ?? $default;

上述代码中,$variable是需要进行判空的变量,而$default是默认值。如果$variable为空,那么$value将被赋值为$default,否则$value将被赋值为$variable的值。简单来说,空合并运算符就是简化了判断一个变量是否为空的过程,并提供了一个默认值。

下面我们通过具体的代码示例来演示如何使用空合并运算符简化判空操作:

$username = $_POST['username'] ?? 'Anonymous';
echo "Welcome, " . $username;

上述代码中,我们通过$_POST全局变量获取用户输入的用户名,然后使用空合并运算符来判断它是否为空。如果用户名为空,则将$username赋值为'Anonymous',否则赋值为用户输入的用户名。然后我们通过echo语句输出欢迎信息。

除了在获取用户输入数据的情况下,空合并运算符在处理从数据库中获取数据时也非常有用。下面是一个使用空合并运算符获取数据库查询结果的示例:

$user = getUserFromDatabase($userId) ?? getDefaultUser();

上述代码中,getUserFromDatabase($userId)函数用于从数据库中获取用户信息,如果获取失败则返回null。我们使用空合并运算符将返回的结果与getDefaultUser()函数的返回值进行比较。如果getUserFromDatabase($userId)返回的结果为空,则将$user赋值为getDefaultUser()函数的返回值,否则将$user赋值为getUserFromDatabase($userId)的返回值。

通过上述示例,我们可以看出空合并运算符的简洁和方便之处。使用它可以避免冗长的判空操作,提高代码的可读性和可维护性。

需要注意的是,空合并运算符只能用于判断一个变量是否为空。如果需要判断多个变量的值是否为空,仍然需要使用三元运算符或isset()

Plus précisément, l'opérateur de fusion nul ?? est utilisé pour déterminer si une variable est vide, et si elle est vide, elle renvoie une valeur par défaut. Sa syntaxe est la suivante :

rrreee

Dans le code ci-dessus, $variable est la variable qui doit être annulée et $default est la valeur par défaut. Si $variable est vide, alors $value se verra attribuer la valeur $default, sinon $value sera attribué la valeur Est la valeur de $variable. En termes simples, l'opérateur de fusion nul simplifie le processus permettant de déterminer si une variable est nulle et fournit une valeur par défaut. 🎜🎜 Ci-dessous, nous utilisons des exemples de code spécifiques pour montrer comment utiliser l'opérateur de fusion nul pour simplifier l'opération de détection nulle : 🎜rrreee🎜Dans le code ci-dessus, nous obtenons le nom d'utilisateur saisi par l'utilisateur via le $_POST code> variable globale, puis utilisez l'opérateur de fusion nul pour déterminer s'il est nul. Si le nom d'utilisateur est vide, <code>$username se voit attribuer la valeur 'Anonymous', sinon le nom d'utilisateur saisi par l'utilisateur lui est attribué. Ensuite, nous générons le message de bienvenue via l'instruction echo. 🎜🎜En outre, dans le cas de l'obtention de données d'entrée utilisateur, l'opérateur de fusion nul est également très utile lorsqu'il s'agit d'obtenir des données de la base de données. Voici un exemple d'utilisation de l'opérateur de fusion nul pour obtenir les résultats d'une requête de base de données : 🎜rrreee🎜Dans le code ci-dessus, la fonction getUserFromDatabase($userId) est utilisée pour obtenir des informations utilisateur à partir de la base de données If. l'acquisition échoue, elle renvoie null. Nous utilisons l'opérateur de fusion nul pour comparer le résultat renvoyé avec la valeur de retour de la fonction getDefaultUser(). Si le résultat renvoyé par getUserFromDatabase($userId) est vide, affectez $user à la valeur de retour de la fonction getDefaultUser(), sinon $user reçoit la valeur renvoyée par getUserFromDatabase($userId). 🎜🎜Grâce à l'exemple ci-dessus, nous pouvons voir la simplicité et la commodité de l'opérateur de coalescence nul. Son utilisation peut éviter de longues opérations nulles et améliorer la lisibilité et la maintenabilité du code. 🎜🎜Il est à noter que l'opérateur de coalescence nul ne peut être utilisé que pour déterminer si une variable est nulle. Si vous devez déterminer si les valeurs de plusieurs variables sont vides, vous devez toujours utiliser l'opérateur ternaire ou la fonction isset() pour effectuer la détermination. 🎜🎜En résumé, le nouvel opérateur de fusion nul en PHP7 simplifie l'opération de détection nulle du code et améliore la lisibilité et la maintenabilité du code. Dans des situations telles que la récupération de données saisies par l'utilisateur, l'interrogation des résultats d'une base de données, etc., l'utilisation de l'opérateur de fusion nul peut rendre le code plus concis sans perdre en clarté. Dans le développement réel, nous devrions utiliser pleinement cette fonctionnalité pour améliorer l'efficacité et la qualité du code. 🎜

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!

Déclaration:
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