Maison >développement back-end >tutoriel php >Comment les crochets dans les noms d'entrée HTML créent-ils des tableaux en PHP ?

Comment les crochets dans les noms d'entrée HTML créent-ils des tableaux en PHP ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-03 20:46:111004parcourir

How Do Square Brackets in HTML Input Names Create Arrays in PHP?

Démêler l'énigme des tableaux d'entrée HTML

Dans le domaine des formulaires HTML, vous avez peut-être rencontré des éléments d'entrée ornés de mystérieux crochets en joignant leurs noms. Cette notation particulière a soulevé des questions sur sa nature et ses spécifications.

En fouillant dans l'insaisissable spécification HTML 4.01, cette « fonctionnalité » reste visiblement absente. L'exploration des vastes archives de Google a donné des résultats peu concluants, avec des références à des « tableaux » et des exemples PHP. C'est précisément dans le domaine de PHP que l'énigme se dévoile.

En PHP, les éléments d'entrée suffixés par des crochets sont automatiquement analysés dans des tableaux. Cette particularité permet à la soumission d'un formulaire d'encapsuler plusieurs valeurs sélectionnées dans une seule variable de tableau. Par exemple, considérons l'extrait HTML suivant :

<input type="checkbox" name="food[]" value="apple">
<input type="checkbox" name="food[]" value="pear">

Lors de la soumission du formulaire, PHP créera la variable tableau $_POST['food'], contenant les valeurs sélectionnées. Vous pouvez accéder à des éléments individuels avec la syntaxe de tableau familière :

echo $_POST['food'][0]; // Outputs the first selected fruit (e.g., "apple")

Vous pouvez également parcourir toutes les valeurs sélectionnées à l'aide d'une boucle foreach :

foreach ($_POST['food'] as $value) {
    print $value; // Outputs each selected fruit (e.g., "apple" and "pear")
}

Bien que ce comportement soit inestimable pour la collecte sélections multiples par l'utilisateur, il est important de noter que la notion de « tableaux d'entrée HTML » ne fait pas partie de la spécification HTML officielle. Il s'agit d'une implémentation spécifique analysée par JavaScript.

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