Re: which one is faster

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Oct 5, 2010 at 3:53 PM, Ashley Sheridan <ash@xxxxxxxxxxxxxxxxxxxx>wrote:

> On Tue, 2010-10-05 at 15:46 -0400, Steve Staples wrote:
>
> > On Tue, 2010-10-05 at 20:35 +0100, Ashley Sheridan wrote:
> > > On Tue, 2010-10-05 at 15:28 -0400, chris h wrote:
> > >
> > > > Benchmark and find out! :)
> > > >
> > > > What are you using this for? Unless you are doing something crazy it
> > > > probably doesn't matter, and you should pick whichever you feel looks
> nicer
> > > > / is easier to code in / etc.
> > > >
> > > > Chris H.
> > > >
> > > > On Tue, Oct 5, 2010 at 3:23 PM, saeed ahmed <saeed.sas@xxxxxxxxx>
> wrote:
> > > >
> > > > > $a = 'hey';
> > > > > $b = 'done';
> > > > >
> > > > > $c = $a.$b;
> > > > > $c = "$a$b";
> > > > >
> > > > > which one is faster for echo $c.
> > > > >
> > >
> > >
> > > As far as I'm aware, the first of the two will be faster, but only
> just.
> > > As Saeed mentioned, the difference will be negligible, and unless you
> > > plan to run a line like that in a loop or something hundreds of
> > > thousands of times, you probably won't notice any difference.
> > > Thanks,
> > > Ash
> > > http://www.ashleysheridan.co.uk
> > >
> > >
> >
> >
> > to be proper, shouldn't it technically be
> > $c = "{$a}{$b}";
> >
> > ??
> >
> > Steve.
> >
> >
>
>
> It doesn't have to use the braces. The braces only tell PHP exactly
> where to stop parsing the current variable name. The following examples
> wouldn't work without them:
>
> $var = 'hello ';
> $arr = array('msg 1'=>'hello','msg 2'=>'world');
>
> echo "{$var}world";
> echo "{$arr['msg 1']}{$arr['msg 2']}";
>
> Without the braces, in the first example PHP would look for a variable
> called $varworld, and in the second it would be looking for a simple
> scaler called $arr, not the array value you wanted.
>
> Thanks,
> Ash
> http://www.ashleysheridan.co.uk
>
>
>
Just to add in here, they are also required when calling an object's
properties, if - ready for this? - that object is itself a property of
another object.

so while this would work,

"$circle->circumference"

this would NOT work

"$circle->circumference->inches"

The later would be injecting the $circle->circumference property, followed
by string literal "->inches".  So to get it to work you would need to use
curlys.

"{$circle->circumference->inches}"


Chris H.

[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux