Welcome Guest, Not a member yet? Register   Sign In
rtrim vs. preg_replace vs. ereg_replace
#1

[eluser]BorisK[/eluser]
I was checking the file_helper.php code today when line 124 struck me as unnecessarily complex way to trim the slash.

Code:
$path = preg_replace("|^(.+?)/*$|", "\\1", $path);

The same code can be rewriten as:
Code:
$path = rtrim($path,'/');

In this case rtrim command is four times faster than preg_replace and more readable as well.

Of course, ereg_replace performs the worst. Here are benchmarking results for 10m iterations:

rtrim: 0.649 s
preg_replace: 2.868 s
ereg_replace: 5.750 s
#2

[eluser]BorisK[/eluser]
Also, in the path_helper.php on line 55, replacing the line that adds a slash to a path

Code:
$path = preg_replace("#([^/])/*$#", "\\1/", $path);

with

Code:
$path = rtrim($path,'/').'/';

speeds things up by about 6-7 times.




Theme © iAndrew 2016 - Forum software by © MyBB