Re: echo returnArray()['a']; // workaround
| From: | Casey | Date: | Fri, 29 Feb 2008 04:42:27 +0000 |
| Subject: | Re: echo returnArray()['a']; // workaround | ||
| References: | 1 2 3 4 5 6 7 8 9 10 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-270703@lists.php.net to get a copy of this message | ||
On Thu, Feb 28, 2008 at 8:38 PM, Nathan Rixham <nrixham@gmail.com> wrote:
>
> Robert Cummings wrote:
> > On Thu, 2008-02-28 at 23:27 -0500, Robert Cummings wrote:
> >> On Fri, 2008-02-29 at 04:04 +0000, Nathan Rixham wrote:
> >>> Robert Cummings wrote:
> >>>> On Fri, 2008-02-29 at 00:18 +0000, Nathan Rixham wrote:
> >>>>> don't say I didn't warn ya fellow nathan!
> >>>>>
> >>>>> #!/usr/bin/php
> >>>>> <?php
> >>>>> function sillyFunc() {
> >>>>> return array('a' => 1, 'b' => 2,
> >>>>> 'c' => 3, 'd' => 4, 'e'=>'some string');
> >>>>> }
> >>>>>
> >>>>> echo
> >>>>> !${~${''}='sillyFunc'}=&${''}().${~${''}}['e']
> >>>>> . PHP_EOL;
> >>>>
> >>>> I was ready to use this system everywhere in my code until I saw that it
> >>>> generates an E_STRICT... now I'll just have to keep with what I usually
> >>>> do.
> >>>>
> >>>> Cheers,
> >>>> Rob.
> >>> scratch the former!
> >>>
> >>> FIXED>>
> >>>
> >>> echo
> >>> !(${~${''}='sillyFunc'}=${''}()).${~${''}}['e'] .
> >>> PHP_EOL;
> >> Ok, I lied... I'm not really gonna use it. Interesting tidbit of
> >> obfuscation though.
> >
> > BTW... the following is shorter:
> >
> > echo ${~${''}='sillyFunc'}['e'] . PHP_EOL;
> >
> > Cheers,
> > Rob.
>
> but doesn't work over here.. php 5.2.4 && 5
>
>
>
Doesn't work for me either. Here's mine:
function ReturnArray() {
return array('a' => 'f', 'b' => 'g', 'c'
=> 'h', 'd' => 'i', 'e' => 'j');
}
echo ${(${0}=ReturnArray())&0}['a'];
--
-Casey