> Am 4.10.2016 um 16:33 schrieb Pascal KISSIAN <php-mailing-l...@lool.fr>:
> 
>> -----Message d'origine-----
>> De : Lauri Kenttä [mailto:lauri.ken...@gmail.com] 
>> Envoyé : mardi 4 octobre 2016 16:21
>> À : Pascal KISSIAN <php-mailing-l...@lool.fr>
>> Cc : internals@lists.php.net
>> Objet : Re: [PHP-DEV] Feature Request: inline pseudo-instruction
>> 
>> On 2016-10-04 14:33, Pascal KISSIAN wrote:
>>> I have an application where a small file is included at multiple 
>>> places.
>>> 
>>> The include is done about an average of 100.000 times .
>> 
>> I'm just wondering if you have ever heard of functions? You really should 
>> write a function, include it only once, and then simply call the function 
>> instead of repeatedly >including the file. Calling a function is a lot 
>> faster than including a file.
>> 
>> --
>> Lauri Kenttä
> 
> Function is not appropriate when the "inlined code" has to share 20-30 local 
> variables ...
> Having a function with 30 args,  or having to build and access an array is 
> not very efficient nor natural...
> Local variables include 6 nested "for loop" indices and local 
> variables/arrays needed for the computing.

Hey,

why do you think are your includes so slow?
Apart from the include itself (which in itself is fairly slow due to filesystem 
access; or in case with opcache, at the very least copying the op_array etc.), 
it does exactly this: building an array and importing it into the included 
files scope.

Also, 20-30 local variables? That sounds a bit like your code has way too many 
responsibilities in one same place. Perhaps you should restructure your code 
instead, but the way you describe it, no.

If your code is so "hot", that also even function calls would be quite 
significant then you should probably really inline your code there as a perf 
optimization. Anyway, code with that many variables almost always can 
meaningfully refactored.

It is not the languages task to optimize insane code ...

Bob




Reply via email to