Maison  >  Article  >  développement back-end  >  Comment ajouter conditionnellement des éléments à un tableau en PHP 8.1 ?

Comment ajouter conditionnellement des éléments à un tableau en PHP 8.1 ?

DDD
DDDoriginal
2024-11-01 11:55:02929parcourir

How to Conditionally Add Elements to an Array in PHP 8.1?

Ajout d'éléments associatifs conditionnels à un tableau en PHP

Lors de la manipulation de tableaux en PHP, vous pouvez rencontrer des scénarios dans lesquels l'ajout d'un élément spécifique dépend de certains conditions. Par exemple, vous souhaiterez peut-être inclure un élément avec une clé et une valeur spécifiques uniquement si une condition particulière est évaluée comme vraie.

Problème d'origine :

Considérez le tableau suivant :

<code class="php">$arr = ['a' => 'abc'];</code>

Vous souhaitez ajouter conditionnellement un nouvel élément avec la clé 'b' et la valeur 'xyz' à ce tableau à l'aide de l'instruction array(). Cependant, l'opérateur ternaire ne permet pas de tels ajouts conditionnels.

Solution en PHP 8.1 :

Avec l'avènement de PHP 8.1, vous pouvez réaliser cet ajout d'élément conditionnel using array unpacking :

<code class="php">$condition = true; // Replace with your actual condition
$arr = [
    'foo' => 'bar', 
    ...($condition ? ['baz' => 'boo' ] : []),
];</code>

Cette syntaxe vous permet de décompresser un tableau au sein d'un tableau existant en fonction de l'évaluation d'une condition. Dans ce cas, si $condition est vrai, le tableau ['baz' => 'boo'] sera fusionné dans $arr. Sinon, il sera ignoré.

Cette solution exploite le nouvel opérateur de propagation (...) introduit dans PHP 8.1, qui permet de décompresser des séquences (y compris des tableaux) dans divers contextes.

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