ID:               39879
 Updated by:       [EMAIL PROTECTED]
 Reported By:      roberto at spadim dot com dot br
-Status:           Open
+Status:           Bogus
 Bug Type:         Performance problem
 Operating System: ALL
 PHP Version:      5.2.0
 New Comment:

That's because you're comparing apples to oranges.
Internal function has to copy the passed parameter, while userspace
function may use copy-on-write, avoiding the malloc-memcpy-free cycle
on each iteration.


Previous Comments:
------------------------------------------------------------------------

[2006-12-18 22:03:39] roberto at spadim dot com dot br

Description:
------------
maybe strval isn't otimized
see reproduce code

Reproduce code:
---------------
<?php
function ret($st){return($st);}
        $qnt=1000000;

        $str=str_repeat("ae",1000);
$st1=microtime(1);
        for ($i=0;$i<$qnt;$i++)
                ret($str);
echo (microtime(1)-$st1)."\n";
$st1=microtime(1);
        for ($i=0;$i<$qnt;$i++)
                strval($str);
echo (microtime(1)-$st1)."\n\n";

?>

Expected result:
----------------
expect to result 2 
be small than result 1



Actual result:
--------------
result 1 is bigger than 2


------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=39879&edit=1

Reply via email to