Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:91958 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 26840 invoked from network); 25 Mar 2016 23:09:45 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 25 Mar 2016 23:09:45 -0000 Authentication-Results: pb1.pair.com header.from=yohgaki@gmail.com; sender-id=pass Authentication-Results: pb1.pair.com smtp.mail=yohgaki@gmail.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.213.43 as permitted sender) X-PHP-List-Original-Sender: yohgaki@gmail.com X-Host-Fingerprint: 209.85.213.43 mail-vk0-f43.google.com Received: from [209.85.213.43] ([209.85.213.43:34943] helo=mail-vk0-f43.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id AC/57-10214-635C5F65 for ; Fri, 25 Mar 2016 18:09:44 -0500 Received: by mail-vk0-f43.google.com with SMTP id e6so104014248vkh.2 for ; Fri, 25 Mar 2016 16:09:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=fd9c3sTlHPvSGp685DHVzyKbIt/tyvls/0yl8gAncaI=; b=NG3OxDcprgjOLpJudq93IJYjqymqsmDGYTBXhJDo86Yk2wk0KgAOvk789POo2dcmSn rt/2/uElTCqbh91CAXr4ICH8qHiwAHy2+dnKSJfilZLCtPnSe8CRbuYqE6r5lh+n5W3m sPg35GNy0Otm2tcXvOYoujUEUbA6fQMYD65Oqe7UQTGMbsWIHjqbD/1POkLOc6dr+4Bz Y0bya4isnDMWLeVpNHjYuQPCThlHj5kvPjZ6S8r7346cl59gZZe7CA34kubNsMVWifLD Wr9lu61MF+mcy5WhJlYVwX1PWGd2X/I9etSHupfrUbuApBJjv26iVPP7LKCQhZUJeQEc 0zwQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=fd9c3sTlHPvSGp685DHVzyKbIt/tyvls/0yl8gAncaI=; b=KLTyLgihK+FeUiOodiWZr+Y27oxQjBDL8d/YtxzV8y6Bg41IQcNJHWCJruebiMeisN s/Fe1yUBIlw1NszSRbCTX5CZOjKmNW3YjKcrfmMfg6OEVm36/DKAdwyCx8pI0e6QgIU8 IgGPctZGJ7NNnlMX2bV8l1RD2IaLyg1ZJDtphdhOQxmshMlidO3UOEj5nr/+blF+NFRp 3w6+CBZarNwgma1+qHyZlDe6NFHtamrGyGIGGisRjIIw9A558Z16TRTCHJujRSGMnLV+ LQYL8eah8U1lDQYKussit4udgRow6+gc3+N5GZlxjMI9jRwQw+GGr3KiKq/IjoIXvfAP ntlw== X-Gm-Message-State: AD7BkJKZhnfYBL4ybj4OTT0Q8zPAvZBuyRGU09bH5bU/3n/yWhazZrY3IG0z1G4NnbUCTe8iOoL3m9GmdXJGxw== X-Received: by 10.159.35.72 with SMTP id 66mr7729387uae.119.1458947379253; Fri, 25 Mar 2016 16:09:39 -0700 (PDT) MIME-Version: 1.0 Sender: yohgaki@gmail.com Received: by 10.159.40.98 with HTTP; Fri, 25 Mar 2016 16:08:59 -0700 (PDT) In-Reply-To: References: Date: Sat, 26 Mar 2016 08:08:59 +0900 X-Google-Sender-Auth: m9ZR761DTjldaMk155BY1mAJKVc Message-ID: To: Marco Pivetta Cc: Scott Arciszewski , Nikita Popov , PHP internals Content-Type: text/plain; charset=UTF-8 Subject: Re: [PHP-DEV] Allow empty property names From: yohgaki@ohgaki.net (Yasuo Ohgaki) Hi Marco, On Sat, Mar 26, 2016 at 8:00 AM, Marco Pivetta wrote: > On 25 March 2016 at 23:56, Yasuo Ohgaki wrote: >> >> Hi all, >> >> On Sat, Mar 26, 2016 at 5:31 AM, Marco Pivetta wrote: >> > var_dump((object) ['' => 'foo']); >> > var_dump((object) ["\0*\0" => 'foo']); >> > var_dump((object) ["\0Foo\0" => 'foo']); >> >> Allowing null char would be too much. We reject null char in path >> parameters, it should be rejected like path parameter. IMHO. > > > The sequence "\0*\0" means "protected property", while the sequence > "\0Foo\0" means "private property of class Foo": that's been the case for a > looooong time :-) Oh. Was it? I've never used and encountered this. Thanks. I'll avoid null char as I use PostgreSQL JSONB extensively, though. > Not suggesting allowing "\0" for property names: the example just shows > creating a public, private and protected property with an empty name. Could you show some real world example use cases? Regards, -- Yasuo Ohgaki yohgaki@ohgaki.net