长度超过整型时,键名混乱



	



















	
	
	
	
	
	
	    




























	
	
	



	
Heim Backend-Entwicklung PHP-Tutorial PHP数组关于数字键名的有关问题

PHP数组关于数字键名的有关问题

Jun 13, 2016 am 11:58 AM
arr dump echo var

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]));
Nach dem Login kopieren




长度超过整型时,键名混乱

$i = 12312312312312;$arr['1000000000147483649'] = 'abc';$arr[1000000000147483649] = 'uio';var_dump($arr);echo '<br>';var_dump(isset($arr[$i]));
Nach dem Login kopieren





长度超过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));
Nach dem Login kopieren




将变量直接作为键名存取,结果又有不同

$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));
Nach dem Login kopieren


从上面的几种测试来看:

如果键名为数字,且范围在 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);
Nach dem Login kopieren




所以在动态操作 PHP 数组时,如果不能确定键名是否会出现数字或者长度大于 int ,则统一将键名 strval 转换为 字符串来操作最为稳妥

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Was ist eine Dump-Datei? Was ist eine Dump-Datei? Jan 12, 2024 pm 04:58 PM

Eine Dump-Datei bezieht sich normalerweise auf eine Binärdatei, die auch als Dump-Datei oder Core-Dump-Datei bezeichnet wird. Diese Art von Datei wird vom Computersystem generiert, wenn ein schwerwiegender Fehler oder eine ungewöhnliche Situation auftritt. Sie wird zum Speichern des Status, des Stapels, der Register, der Speicherbilder, der Protokolle und anderer Informationen des Systems oder der Anwendung verwendet.

Fünf ausgewählte Open-Source-Projekte in der Go-Sprache, mit denen Sie die Welt der Technologie erkunden können Fünf ausgewählte Open-Source-Projekte in der Go-Sprache, mit denen Sie die Welt der Technologie erkunden können Jan 30, 2024 am 09:08 AM

Im heutigen Zeitalter der rasanten technologischen Entwicklung schießen Programmiersprachen wie Pilze nach einem Regenschauer aus dem Boden. Eine der Sprachen, die viel Aufmerksamkeit erregt hat, ist die Go-Sprache, die von vielen Entwicklern wegen ihrer Einfachheit, Effizienz, Parallelitätssicherheit und anderen Funktionen geliebt wird. Die Go-Sprache ist für ihr starkes Ökosystem mit vielen hervorragenden Open-Source-Projekten bekannt. In diesem Artikel werden fünf ausgewählte Open-Source-Projekte für die Go-Sprache vorgestellt und der Leser soll die Welt der Open-Source-Projekte für die Go-Sprache erkunden. KubernetesKubernetes ist eine Open-Source-Container-Orchestrierungs-Engine für die Automatisierung

Go-Grundlagen zur Sprachentwicklung: 5 beliebte Framework-Empfehlungen Go-Grundlagen zur Sprachentwicklung: 5 beliebte Framework-Empfehlungen Mar 24, 2024 pm 01:15 PM

„Grundlagen der Go-Sprachentwicklung: 5 beliebte Framework-Empfehlungen“ Als schnelle und effiziente Programmiersprache wird die Go-Sprache von immer mehr Entwicklern bevorzugt. Um die Entwicklungseffizienz zu verbessern und die Codestruktur zu optimieren, entscheiden sich viele Entwickler für die Verwendung von Frameworks, um Anwendungen schnell zu erstellen. In der Welt der Go-Sprache stehen viele hervorragende Frameworks zur Auswahl. In diesem Artikel werden fünf beliebte Go-Sprach-Frameworks vorgestellt und spezifische Codebeispiele bereitgestellt, um den Lesern zu helfen, diese Frameworks besser zu verstehen und zu verwenden. 1.GinGin ist ein leichtes Web-Framework mit hoher Geschwindigkeit

Implementierung der verteilten Aufgabenplanung mit Golangs Web-Framework Echo-Framework Implementierung der verteilten Aufgabenplanung mit Golangs Web-Framework Echo-Framework Jun 24, 2023 am 11:49 AM

Mit der Entwicklung des Internets und der Weiterentwicklung der Informationstechnologie ist das Zeitalter von Big Data angebrochen, und auch Bereiche wie Datenanalyse und maschinelles Lernen sind weit verbreitet. In diesen Bereichen ist die Aufgabenplanung ein unvermeidliches Problem. Für die Verbesserung der Effizienz ist es von entscheidender Bedeutung, eine effiziente Aufgabenplanung zu erreichen. In diesem Artikel stellen wir vor, wie Sie das Web-Framework Echo-Framework von Golang verwenden, um eine verteilte Aufgabenplanung zu implementieren. 1. Einführung in das Echo-Framework Echo ist ein leistungsstarkes, skalierbares und leichtes GoWeb-Framework. Es basiert auf HTTP

Laravel-Entwicklung: Wie implementiert man die WebSockets-Kommunikation mit Laravel Echo und Pusher? Laravel-Entwicklung: Wie implementiert man die WebSockets-Kommunikation mit Laravel Echo und Pusher? Jun 13, 2023 pm 05:01 PM

Laravel ist ein beliebtes PHP-Framework, das hoch skalierbar und effizient ist. Es bietet viele leistungsstarke Tools und Bibliotheken, die es Entwicklern ermöglichen, schnell hochwertige Webanwendungen zu erstellen. Darunter sind LaravelEcho und Pusher zwei sehr wichtige Tools, mit denen die WebSockets-Kommunikation einfach implementiert werden kann. In diesem Artikel wird detailliert beschrieben, wie diese beiden Tools in Laravel-Anwendungen verwendet werden. Was sind WebSockets? WebSockets

Lassen Sie uns über die Unterschiede zwischen var, let und const sprechen (Codebeispiel) Lassen Sie uns über die Unterschiede zwischen var, let und const sprechen (Codebeispiel) Jan 06, 2023 pm 04:25 PM

Dieser Artikel vermittelt Ihnen relevantes Wissen über JavaScript. Er stellt Ihnen hauptsächlich die Unterschiede zwischen var, let und const sowie die Beziehung zwischen ECMAScript und JavaScript vor. Ich hoffe, es ist hilfreich für alle.

Detaillierte Erläuterung der Rolle und Verwendung des Schlüsselworts echo in PHP Detaillierte Erläuterung der Rolle und Verwendung des Schlüsselworts echo in PHP Jun 28, 2023 pm 08:12 PM

Ausführliche Erklärung der Rolle und Verwendung des Schlüsselworts echo in PHP PHP ist eine weit verbreitete serverseitige Skriptsprache, die häufig in der Webentwicklung verwendet wird. Das Schlüsselwort echo ist eine Methode zur Ausgabe von Inhalten in PHP. In diesem Artikel werden die Funktion und Verwendung des Schlüsselworts echo ausführlich vorgestellt. Funktion: Die Hauptfunktion des Schlüsselworts echo besteht darin, Inhalte an den Browser auszugeben. Bei der Webentwicklung müssen wir Daten dynamisch auf der Front-End-Seite präsentieren. Zu diesem Zeitpunkt können wir das Schlüsselwort echo verwenden, um die Daten auf der Seite auszugeben. e

18 Möglichkeiten, das Problem zu beheben, dass der Audiodienst unter Windows 11 nicht reagiert 18 Möglichkeiten, das Problem zu beheben, dass der Audiodienst unter Windows 11 nicht reagiert Jun 05, 2023 pm 10:23 PM

Für die Audioausgabe und -eingabe sind bestimmte Treiber und Dienste erforderlich, damit sie unter Windows 11 wie erwartet funktionieren. Manchmal treten im Hintergrund Fehler auf, die zu Audioproblemen wie fehlender Audioausgabe, fehlenden Audiogeräten, verzerrtem Audio usw. führen. So beheben Sie, dass der Audiodienst unter Windows 11 nicht reagiert. Wir empfehlen Ihnen, mit den unten genannten Korrekturen zu beginnen und sich durch die Liste zu arbeiten, bis Sie Ihr Problem gelöst haben. Der Audiodienst reagiert unter Windows 11 aus verschiedenen Gründen möglicherweise nicht mehr. Mithilfe dieser Liste können Sie die meisten Probleme überprüfen und beheben, die verhindern, dass Audiodienste unter Windows 11 reagieren. Bitte befolgen Sie die entsprechenden Abschnitte unten, um Ihnen durch den Prozess zu helfen. Methode 1: Starten Sie den Audiodienst neu

See all articles