Re: Re: optimilize web page loading

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

 



Jason Pruim wrote:

On Mar 27, 2008, at 11:05 AM, Shawn McKenzie wrote:
Al wrote:
Good point.  I usually do use the single quotes, just happened to key
doubles for the email.

Actually, it's good idea for all variable assignments.

Philip Thompson wrote:
On Mar 26, 2008, at 6:28 PM, Al wrote:
Depends on the server and it's load.  I've strung together some
rather large html strings and they aways take far less time than the
transient time on the internet. I used to use OB extensively until
one day I took the time to measure the difference. I don't recall the
numbers; but, I do recall it was not worth the slight extra trouble
to use OB.

Now, I simple assemble by html strings with $report .= "foo"; And
then echo $report at the end. It also makes the code very easy to
read and follow.

You might as well take it a step further. Change the above to:

$report .= 'foo';

This way for literal strings, the PHP parser doesn't have to evaluate
this string to determine if anything needs to be translated (e.g.,
$report .= "I like to $foo"). A minimal speedup, but nonetheless...

~Philip


Andrew Ballard wrote:
On Wed, Mar 26, 2008 at 1:18 PM, Al <news@xxxxxxxxxxxxx> wrote:
You are really asking an HTML question, if you think about it.

At the PHP level, either use output buffering or assemble all your
html string as a variable and
then echo it.  The goal is to compress the string into the minimum
number of packets.
Yes, but do so smartly. Excessive string concatenation can slow things down as well. On most pages you probably won't notice much difference,
but I have seen instances where the difference was painfully obvious.
Andrew

Yes and if your script takes .00000000000000000000000000000002 seconds
to run using double quotes it will only take
.000000000000000000000000000000019 seconds with single (depending upon
how many quotes you have of course)  :-)

I'm coming in late to this thread so sorry if I missed this :)

How much of a difference would it make if you have something like this: echo "$foo bar bar bar bar $foo $foo"; verses: echo $foo . "bar bar bar bar" . $foo $foo; ?In other words... You have a large application which is most likely to be faster? :)



There was a discussion about this a few weeks ago - ISTR that the compiler does wierd things with double-quoted strings, something like tokenising the words and checking each bit for lurking variables.
So in fact

  echo "$foo bar bar bar bar $foo $foo";

is slowest (because there *are* variables to interpolate,

  echo $foo . " bar bar bar bar ".$foo." ".$foo;

is a bit faster, but the double-quoted bits cause some slow-down,

  echo $foo . ' bar bar bar bar '.$foo.' '.$foo;

is a bit faster again - the single quoted bits pass through without further inspection, and finally

  echo $foo,' bar bar bar bar ',$foo,' ',$foo;

is actually the fastest, because the strings are not concatenated before output.

I think that was the overall summary - I can't locate the original post to verify (or attribute) but it's in this list somewhere...

Cheers

--
Peter Ford                              phone: 01580 893333
Developer                               fax:   01580 893399
Justcroft International Ltd., Staplehurst, Kent

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[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