Re: functions versus includes
| From: | Chris | Date: | Mon, 12 Nov 2007 04:52:15 +0000 |
| Subject: | Re: functions versus includes | ||
| References: | 1 2 3 4 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-264341@lists.php.net to get a copy of this message | ||
Nathan Nobbe wrote:
On Nov 11, 2007 9:32 PM, Robert Cummings <robert@interjinn.com <mailto:robert@interjinn.com>> wrote:On Mon, 2007-11-12 at 11:27 +1100, Chris wrote:Frank Lopes wrote:I just started using PHP and got to think... Without getting into the discussion of "best practices",strictly froma performance perspective, what is faster: a function or an include? For example I have a block of text that needs to appear
mutliple timesthroughout the site. Will I be better off creating a function with its contents and then later just calling the function or, will it be faster (from an execution perspective) for me to
create an.inc file that gets included later on? Micro-optimization is pretty useless. I seriously doubt you would
noticeany difference in performance. This comes under the other discussions like about which is faster
- aforeach/while/for loop. You'll find other bottlenecks (eg changing a regex to do an
str_replace)which will make a bigger difference.
Actually, if you're going to use a comparison between using regex and
string replacement as an example of lower hanging optimization fruit, I
think you'll find the difference between invoking a function and
including a file to be on par. The function is by far the better
solution when considering speed.
rob is right. i said screw it and wrote out a series of test scripts; just got
curious. so, there is one file which includes an external script that operates
on a variable in global scope; then there is a script which defines a function
internally; then there is a script which includes another script with that function
defined in it.
the last one won each time; quite to my surprise.
nathan@devel ~/working/www/phpExperiments/functionVsInclude $ php mainWInclude.php
10
totalTime: 0.001057
nathan@devel ~/working/www/phpExperiments/functionVsInclude $ php mainWFunction.php
10
totalTime: 0.000642
nathan@devel ~/working/www/phpExperiments/functionVsInclude $ php mainWExternalFunction.php
10
totalTime: 0.000604
As I said, it's a micro-optimization *shrug*. 0.0004 seconds difference over 10 iterations - wow ;)
--
Postgresql & php tutorials
http://www.designmagick.com/