🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: chile.comp.programacion
Article #523

PHP: Mitos o realidades?

#523
From: +mArkO+
Date: Sat, 21 Jun 2008 23:29
75 lines
3824 bytes
Esto lo encontre en una web
http://informatica-practica.net/solocodigo/index.php/2007/10/16/trucos-para-optimizacion-de-codigo-en-php

===================================
TRUCOS PARA OPTIMIZAR EL CODIGO PHP
===================================

1)Si un m�todo puede ser static, decl�ralo como static.

2)echo es m�s r�pido que print.

3)Utiliza m�ltiples echo�s en lugar de concatenar cadenas.

4)Fija el valor m�ximo para los bucles antes del loop, y no estando ya 
dentro de �l.

5)Utiliza unset para las variables que ya no van a ser usadas, especialmente 
arrays cargados, de forma que liberes memoria.

6)require_once() es demasiado lenta y poco rentable.

7)Utiliza rutas absolutas en includes y requires, reduciendo 
considerablemente el tiempo de carga.

8)Si necesitas saber cuando comenz� a ejecutarse un script, $_SERVER['REQUEST_TIME'] 
es preferible a time().

9)str_replace es mucho m�s r�pida que preg_replace, pero strtr es a�n m�s 
r�pida que str_replace.

10)Es mejor utilizar una estructura condicional switch-case que m�ltiples 
if-else anidados.

11)Omitir errores mediante el uso de @ es bastante lento.

12)Activa en Apache el modo mod_deflate.

13)Cierra la conexi�n con la base de datos cuando ya no sea necesaria.

14)$row['id'] es 7 veces m�s r�pido que $row[id].

15)No utilices funciones dentro de bucles, como por ejemplo en ($x=0; $x < 
count($array); $x) La funci�n count() es ejecutada en cada pasadas.

16)Utiliza variables locales. Incrementar una variable gloval es el doble de 
lento que hacerlo con una local.

17)Incrementar una propiedad de un objeto (ej. $this->prop++)es 3 veces m�s 
lento que el uso de una variable local.

18)Inicializa las variables. Aunque no es necesario en PHP, incrementar una 
variable no declarada es entre 9 y 10 veces m�s lento que hacerlo con una ya 
declarada.

19)Utiliza la comilla simple ' en lugar de la doble comilla " ya que PHP no 
busca variables entre comillas simples, y el tiempo de carga puede verse 
reducido.

20)No utilices scripts PHP si puedes usar HTML est�tico, ya que �ste �tlimo 
carga entre 9 y 10 veces m�s r�pido.

21)Instala alg�n sistema de cach� para que tus scripts no deban ser 
ejecutados cada vez que se carga una p�gina. �ste punto reduce 
considerablemente el tiempo de carga de una p�gina y el uso de CPU del 
servidor.

22)++$i es m�s r�pido que $i++ en PHP.

23)No utilices todas las estructuras como clases, el uso de arrays en muchos 
casos tambi�n es adecuado.

24)Trata de hacer tu c�digo reutilizable y evitar redundancias.

25)Puedes utilizar compresi�n Gzip para aumentar la velocidad de 
transferencia. 
Technical Details
Message-ID: <g3k2so$gb$1@news.nivel5.cl>
Path: arc1-ca.pugleaf.net!g2news1.google.com!news2.google.com!border1.nntp.dca.giganews.com!nntp.giganews.com!nx01.iad01.newshosting.com!newshosting.com!novia!newsfeed.yul.equant.net!news-santiago!news.nivel5.cl!not-for-mail

Show Full Headers
Complete Article Headers
X-Google-Thread: 1593cb,8ee269e0dd40bcf0,start
X-Google-Thread: 1054ea,8ee269e0dd40bcf0,start
X-Google-Attributes: gid1593cb,gid1054ea,domainid0,public,usenet
X-Google-Language: SPANISH,ASCII
Path: arc1-ca.pugleaf.net!g2news1.google.com!news2.google.com!border1.nntp.dca.giganews.com!nntp.giganews.com!nx01.iad01.newshosting.com!newshosting.com!novia!newsfeed.yul.equant.net!news-santiago!news.nivel5.cl!not-for-mail
From: "+mArkO+" <kitim@porta.com>
Newsgroups: chile.comp.programacion,chile.comp.unix
Subject: PHP: Mitos o realidades?
Date: Sat, 21 Jun 2008 19:29:30 -0400
Organization: Varios
Lines: 77
Message-ID: <g3k2so$gb$1@news.nivel5.cl>
NNTP-Posting-Host: pc-197-31-45-190.cm.vtr.net
X-Trace: news.nivel5.cl 1214090968 523 190.45.31.197 (21 Jun 2008 23:29:28 GMT)
X-Complaints-To: news@news.nivel5.cl
NNTP-Posting-Date: Sat, 21 Jun 2008 23:29:28 +0000 (UTC)
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2900.3138
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3198
X-RFC2646: Format=Flowed; Original