Maison > développement back-end > tutoriel php > Comment fonctionnent les accolades {} dans l'interpolation de chaînes PHP ?

Comment fonctionnent les accolades {} dans l'interpolation de chaînes PHP ?

DDD
Libérer: 2025-01-01 00:44:17
original
628 Les gens l'ont consulté

How Do Curly Braces {} Work in PHP String Interpolation?

Accolades dans les littéraux de chaîne en PHP

Question : Que représentent les accolades { } lorsqu'elles sont utilisées dans chaînes littérales dans PHP ?

Réponse :

Les accolades dans les littéraux de chaîne en PHP indiquent l'utilisation d'une « syntaxe complexe (bouclée) » pour l'interpolation de chaînes. Cette syntaxe permet l'inclusion d'expressions dans des chaînes.

Selon la documentation PHP, toute variable scalaire, élément de tableau ou propriété d'objet avec une représentation sous forme de chaîne peut être ajouté à une chaîne en utilisant cette syntaxe. Pour ce faire, placez simplement l'expression entre accolades { }.

Il est important de noter que le { ne peut pas être échappé, donc la syntaxe n'est reconnue que lorsque le $ suit immédiatement le {. Pour obtenir un littéral {$, utilisez $.

Voici quelques exemples pour illustrer l'utilisation :

$great = 'fantastic';

// Won't work, outputs: This is { fantastic}
echo "This is { $great}";

// Works, outputs: This is fantastic
echo "This is {$great}";
echo "This is ${great}";
Copier après la connexion

La syntaxe complexe est particulièrement utile lorsque les expressions sont complexes ou nécessitent l'accès à plusieurs tableaux dimensionnels ou propriétés d'objet :

echo "This is the value of the var named $name: {${$name}}";

echo "This is the value of the var named by the return value of getName(): {${getName()}}";

echo "This is the value of the var named by the return value of $object->getName(): {${$object->getName()}}";
Copier après la connexion

Bien que les accolades ne soient souvent pas nécessaires, elles sont requises dans les situations où le nom de la variable n'est pas immédiatement reconnaissable, tel que "$aefgh" dans l'exemple suivant :

$out = "$aefgh";
Copier après la connexion

Pour résoudre ce problème, des accolades peuvent être utilisées pour spécifier explicitement le nom de la variable :

$out = "${a}efgh"; // or
$out = "{$a}efgh";
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