Optimizando PHP !!! Parte I
Enero 18, 2007
(NOS MUDAMOS A http://dayllan.inclinado.org)
He recorrido la web buscando cualquier cosa relacionado con la optimizacion de PHP y hasta ahora he reunido unos cuantos puntos a tener en cuanta que por lo menos yo pasaba por alto y me imagino que muchos lo hagamos. Algunos son bastante interesantes. Espero que les sirva…
1.- No usar funciones dentro de un loop (ej. for( $i = 0; $i < count($array); $i++)) la función count() se llama cada vez.
2.- required_once() es caro.
3.- $row["id"] es 7 veces mas rápido que $row[id]. Además que PHP interpreta id como una constante no definida, y tira un notice indicando que no se definio en ningún lado y que lo va a usar como string.
4.- Si un método puede ser declarado estático, declaralo estático. Mejora la performance 4 veces.
5.- preg_replace es más rápido que str_replace, pero strtr es 4 veces más rápido que preg_replace.
6.- Los mensajes de error son caros.
7.- Incrementar una variable indefinida es 9 ó 10 veces más lento que una ya pre-declarada.
8.- Hacer un echo de etiquetas HTML es mucho mas lento que la salida directa en HTML.
9.- Haciendo un llamado a isset() es mucho mas rapido que strlen().
10- $i++ suele ser un poco mas lento que ++$i. Esto es solo aplicable para PHP, asique no anden modificando su código Java o C
11.-
$keys = array(“apples”, “oranges”, “mangoes”, “tomatoes”, “pickles”);
if (in_array(‘mangoes’, $keys)) { … }
es 3 veces mas lento que
$keys = array(“apples” => 1, “oranges” => 1, “mangoes” => 1, “tomatoes” => 1, “pickles” => 1);
if (isset($keys['mangoes'])) { … }
————————————————————————
Prometo una segunda parte….
Entry Filed under: php. .
2 Comments Add your own
Leave a Comment
Some HTML allowed:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <pre> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>
Trackback this post | Subscribe to the comments via RSS Feed
1.
Arturo | Enero 19, 2007 at 8:22 pm
Interesante para los que estamos verdes con este lenguaje.
Un saludo.
2.
Manuel Emiliano | Enero 19, 2007 at 11:14 pm
Esta muy bien, creo que hacen falta algunos ejemplos para cada caso y el por que de la lentitud.