Maison  >  Article  >  développement back-end  >  Quelles restrictions s'appliquent aux clés de tableau PHP ?

Quelles restrictions s'appliquent aux clés de tableau PHP ?

Susan Sarandon
Susan Sarandonoriginal
2024-10-25 06:59:29290parcourir

What Restrictions Apply to PHP Array Keys?

Tous les caractères sont-ils autorisés en tant que clés de tableau PHP ?

Les tableaux PHP permettent un large éventail de types de clés, y compris des entiers et des chaînes. Cependant, des limitations existent quant aux caractères qui peuvent être utilisés dans les clés de chaîne.

Restrictions de type de clé

Conformément au manuel PHP, les restrictions suivantes s'appliquent aux clés de tableau :

  • Les chaînes contenant des entiers valides sont automatiquement converties en entiers (par exemple, "8" devient 8).
  • Les flottants sont également convertis en entiers, tronquant toute partie décimale (par exemple, 8,7 devient 8).
  • Les booléens sont convertis en entiers (vrai devient 1, faux devient 0).
  • Les valeurs nulles sont converties en chaîne vide ("").
  • Tableaux et les objets ne peuvent pas servir de clés, déclenchant un avertissement.

Restrictions relatives aux clés de chaîne

En ce qui concerne les clés de chaîne, le manuel indique que PHP stocke les caractères sous forme d'octets. Par conséquent, chaque caractère d’une clé doit faire partie du jeu de 256 caractères pris en charge. Cela signifie que PHP ne prend pas nativement en charge Unicode.

Caractères autorisés

En substance, n'importe quelle chaîne peut être utilisée comme clé de tableau en PHP. Cela inclut toute séquence de caractères, même les données binaires, à condition qu'elle soit conforme à la limitation de 256 caractères.

Exemple

Le code suivant démontre des éléments non conventionnels mais valides. utilisations des clés de tableau :

<code class="php">$w = array(chr(0) => 'null byte?', chr(rand(0, 255)) => 'random byte?');
var_dump($w);</code>

Ce code initialise un tableau avec une clé contenant un octet nul (chr(0)) et une autre clé contenant un octet aléatoire (chr(rand(0, 255))) .

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