Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:111566 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 92395 invoked from network); 17 Aug 2020 01:55:55 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 17 Aug 2020 01:55:55 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 73C231804DB for ; Sun, 16 Aug 2020 17:56:41 -0700 (PDT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=0.6 required=5.0 tests=BAYES_50,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.2 X-Spam-Virus: No X-Envelope-From: Received: from bird.elm.relay.mailchannels.net (bird.elm.relay.mailchannels.net [23.83.212.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Sun, 16 Aug 2020 17:56:39 -0700 (PDT) X-Sender-Id: dreamhost|x-authsender|josh@joshbruce.dev Received: from relay.mailchannels.net (localhost [127.0.0.1]) by relay.mailchannels.net (Postfix) with ESMTP id 396A140109B for ; Mon, 17 Aug 2020 00:56:38 +0000 (UTC) Received: from pdx1-sub0-mail-a22.g.dreamhost.com (100-96-5-126.trex.outbound.svc.cluster.local [100.96.5.126]) (Authenticated sender: dreamhost) by relay.mailchannels.net (Postfix) with ESMTPA id AB599400902 for ; Mon, 17 Aug 2020 00:56:37 +0000 (UTC) X-Sender-Id: dreamhost|x-authsender|josh@joshbruce.dev Received: from pdx1-sub0-mail-a22.g.dreamhost.com (pop.dreamhost.com [64.90.62.162]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384) by 0.0.0.0:2500 (trex/5.18.8); Mon, 17 Aug 2020 00:56:38 +0000 X-MC-Relay: Neutral X-MailChannels-SenderId: dreamhost|x-authsender|josh@joshbruce.dev X-MailChannels-Auth-Id: dreamhost X-Continue-Harbor: 0491b52835cfabb2_1597625797915_1300796636 X-MC-Loop-Signature: 1597625797915:79313356 X-MC-Ingress-Time: 1597625797914 Received: from pdx1-sub0-mail-a22.g.dreamhost.com (localhost [127.0.0.1]) by pdx1-sub0-mail-a22.g.dreamhost.com (Postfix) with ESMTP id 71F7C804C0 for ; Sun, 16 Aug 2020 17:56:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=joshbruce.dev; h=from :content-type:content-transfer-encoding:mime-version:subject :message-id:date:to; s=joshbruce.dev; bh=Yq05GnEf7xNmHdvrwenFHv1 V5pg=; b=aoKzL1LsYrAqg33+QaLCMlcFviAcxYUsdqzCKW4S2tsrMBvw1xGu3C2 kS/2+fS65KQ+AyQU6PzA5/WBxhpSMxrHNaV5AoFnSOMPHKFzvkv8hllgfdbw8zhr wzN+J/L4HpMhnPHgZ7CKAzKGJ4jj8NZr7gXnabW28jZ+w3mWjku4= Received: from joshs-mbp.lan (21.140.29.136.in-addr.arpa [136.29.140.21]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) (Authenticated sender: josh@joshbruce.dev) by pdx1-sub0-mail-a22.g.dreamhost.com (Postfix) with ESMTPSA id 1DD72804BD for ; Sun, 16 Aug 2020 17:56:36 -0700 (PDT) X-DH-BACKEND: pdx1-sub0-mail-a22 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Mime-Version: 1.0 (Mac OS X Mail 13.4 \(3608.120.23.2.1\)) Message-ID: Date: Sun, 16 Aug 2020 19:56:35 -0500 To: Internals X-Mailer: Apple Mail (2.3608.120.23.2.1) X-VR-OUT-STATUS: OK X-VR-OUT-SCORE: 0 X-VR-OUT-SPAMCAUSE: gggruggvucftvghtrhhoucdtuddrgeduiedruddtvddggedvucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuggftfghnshhusghstghrihgsvgdpffftgfetoffjqffuvfenuceurghilhhouhhtmecufedttdenucenucfjughrpefhtgfgggfukfffvffosehtqhhmtdhhtdejnecuhfhrohhmpeflohhshhcuuehruhgtvgcuoehjohhshhesjhhoshhhsghruhgtvgdruggvvheqnecuggftrfgrthhtvghrnhepteejtddvteehfedutdegkeeifeekleejheejgfekhfefjeejheffkeettdehheelnecukfhppedufeeirddvledrudegtddrvddunecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmohguvgepshhmthhppdhhvghlohepjhhoshhhshdqmhgsphdrlhgrnhdpihhnvghtpedufeeirddvledrudegtddrvddupdhrvghtuhhrnhdqphgrthhhpeflohhshhcuuehruhgtvgcuoehjohhshhesjhhoshhhsghruhgtvgdruggvvheqpdhmrghilhhfrhhomhepjhhoshhhsehjohhshhgsrhhutggvrdguvghvpdhnrhgtphhtthhopehinhhtvghrnhgrlhhssehlihhsthhsrdhphhhprdhnvght Subject: [Concept] Don't cast keys in array to int From: josh@joshbruce.dev (Josh Bruce) I=E2=80=99m sure this conversation has happened before. But it=E2=80=99s = on my mind as I work on some things on wanted to ask internals real = quick before getting back to it. [=E2=80=9C2=E2=80=9D =3D> =E2=80=9Chello=E2=80=9D, =E2=80=9C4=E2=80=9D = =3D> =E2=80=9Cinternals=E2=80=9D] -> [2 =3D> =E2=80=9Chello=E2=80=9D, 4 = =3D> =E2=80=9Cinternals=E2=80=9D] Meanwhile: [=E2=80=9Chello=E2=80=9D, =E2=80=9Cinternals=E2=80=9D] -> cast to object = -> (=E2=80=9C0=E2=80=9D =3D> =E2=80=9Chello=E2=80=9D, =E2=80=9C2=E2=80=9D = =3D> =E2=80=9Cinternals=E2=80=9D) Curious why this it=E2=80=99s the case that specifically requesting a = string be a key that happens to be an integer, becomes an int type. I kind of understand why in the case of object the implicit = (PHP-established) integers become strings. And, of course, casting back puts us back to an indexed array. I=E2=80=99v= e picked up that type juggling might be a touchy point - but the focus = is on why the key gets cast at all when it=E2=80=99s an array type. Is it to facilitate the type juggle from an object to an array?? Cheers, Josh=