PHP数组关于数字键名的有关问题
PHP数组关于数字键名的问题
以下是对PHP数组数字键名的几点总结:
键名长度只能在 int 长度范围内,超过int 范围后将会出现覆盖等混乱情况
在键名长度为 int 范围内存取值时,PHP会强制将数字键名转换为 int 数值型
数字键名长度大于19位时,将变成 0
键名正常长度时,字符串或数值类型一样
$i = 126545165;$arr['126545165'] = 'abc';$arr[126545165] = 'uio';var_dump($arr);echo '<br>';var_dump(isset($arr[$i]));

长度超过整型时,键名混乱
$i = 12312312312312;$arr['1000000000147483649'] = 'abc';$arr[1000000000147483649] = 'uio';var_dump($arr);echo '<br>';var_dump(isset($arr[$i]));
长度超过20位时,键名将变成 0
$i = 123123123123123123123123123123;var_dump($i);echo '<br>';$arr[123123123123123123123123123123] = 'abc';$arr[strval(123123123123123123123123123123)] = 'abc';var_dump($arr);echo '<br>';var_dump(isset($arr[$i]));echo '<br>';var_dump(isset($arr[strval($i)]));echo '<br>';var_dump(array_keys($arr));

将变量直接作为键名存取,结果又有不同
$i = 123123123123123;var_dump($i);echo '<br>';$arr[$i] = 'abc';$arr[strval($i)] = 'abc';var_dump($arr);echo '<br>';var_dump(isset($arr[$i]));echo '<br>';var_dump(isset($arr[strval($i)]));echo '<br>';var_dump(array_keys($arr));

从上面的几种测试来看:
如果键名为数字,且范围在 int 以内,字符串或者 int 不会对存取有什么影响
如果长度大于 int 时会自动转化为 float ,再转换进行存取出现各种混乱情况,甚至直接变成 0,所以最好是统一转换为 string 类型
$i = 123123123123123123123123123123;$j = '123123123123123123123123123123';$arr1[strval($i)] = 'abc';$arr2[$j] = 'abc';var_dump($arr1);echo '<br>';var_dump($arr2);
所以在动态操作 PHP 数组时,如果不能确定键名是否会出现数字或者长度大于 int ,则统一将键名 strval 转换为 字符串来操作最为稳妥

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds





Un fichier de vidage fait généralement référence à un fichier binaire, également appelé fichier de vidage ou fichier de vidage principal. Ce type de fichier est généré par le système informatique lorsqu'il rencontre une erreur grave ou une situation anormale. Il est utilisé pour stocker l'état, la pile, les registres, les images mémoire, les journaux et d'autres informations du système ou de l'application.

À l'ère actuelle de développement technologique rapide, les langages de programmation poussent comme des champignons après la pluie. L'un des langages qui a beaucoup retenu l'attention est le langage Go, apprécié par de nombreux développeurs pour sa simplicité, son efficacité, sa sécurité de concurrence et d'autres fonctionnalités. Le langage Go est connu pour son écosystème solide avec de nombreux excellents projets open source. Cet article présentera cinq projets open source sélectionnés en langage Go et amènera les lecteurs à explorer le monde des projets open source en langage Go. KubernetesKubernetes est un moteur d'orchestration de conteneurs open source pour l'automatisation

"Go Language Development Essentials : 5 recommandations de framework populaires" En tant que langage de programmation rapide et efficace, le langage Go est favorisé par de plus en plus de développeurs. Afin d'améliorer l'efficacité du développement et d'optimiser la structure du code, de nombreux développeurs choisissent d'utiliser des frameworks pour créer rapidement des applications. Dans le monde du langage Go, il existe de nombreux excellents frameworks parmi lesquels choisir. Cet article présentera 5 frameworks de langage Go populaires et fournira des exemples de code spécifiques pour aider les lecteurs à mieux comprendre et utiliser ces frameworks. 1.GinGin est un framework Web léger avec une rapidité

Laravel est un framework PHP populaire, hautement évolutif et efficace. Il fournit de nombreux outils et bibliothèques puissants qui permettent aux développeurs de créer rapidement des applications Web de haute qualité. Parmi eux, LaravelEcho et Pusher sont deux outils très importants grâce auxquels la communication WebSockets peut être facilement implémentée. Cet article détaillera comment utiliser ces deux outils dans les applications Laravel. Que sont les WebSockets ? WebSockets

Explication détaillée du rôle et de l'utilisation du mot-clé echo en PHP PHP est un langage de script côté serveur largement utilisé dans le développement Web. Le mot-clé echo est une méthode utilisée pour générer du contenu en PHP. Cet article présentera en détail la fonction et l'utilisation du mot-clé echo. Fonction : La fonction principale du mot-clé echo est de transmettre du contenu au navigateur. Dans le développement Web, nous devons présenter dynamiquement les données sur la page frontale. À ce stade, nous pouvons utiliser le mot-clé echo pour afficher les données sur la page. e

Cet article vous apporte des connaissances pertinentes sur JavaScript. Il vous présente principalement les différences entre var, let et const, ainsi que la relation entre ECMAScript et JavaScript. Les amis intéressés peuvent y jeter un œil.

Les frameworks Go les plus populaires actuellement sont : Gin : framework web léger et performant, simple et facile à utiliser. Echo : un framework Web rapide et hautement personnalisable qui fournit un routage et un middleware hautes performances. GorillaMux : Un multiplexeur rapide et flexible qui offre des options de configuration de routage avancées. Fibre : un framework Web hautes performances optimisé pour les performances qui gère un nombre élevé de requêtes simultanées. Martini : un framework Web modulaire avec une conception orientée objet qui fournit un riche ensemble de fonctionnalités.

La sortie et l’entrée audio nécessitent des pilotes et services spécifiques pour fonctionner comme prévu sous Windows 11. Ceux-ci finissent parfois par rencontrer des erreurs en arrière-plan, provoquant des problèmes audio comme l'absence de sortie audio, des périphériques audio manquants, un son déformé, etc. Comment réparer le service audio qui ne répond pas sous Windows 11 Nous vous recommandons de commencer par les correctifs mentionnés ci-dessous et de parcourir la liste jusqu'à ce que vous parveniez à résoudre votre problème. Le service audio peut ne plus répondre pour un certain nombre de raisons sous Windows 11. Cette liste vous aidera à vérifier et à résoudre la plupart des problèmes qui empêchent les services audio de répondre sous Windows 11. Veuillez suivre les sections pertinentes ci-dessous pour vous aider tout au long du processus. Méthode 1 : Redémarrez le service audio Vous pouvez rencontrer.
