[Php-avanzado] Problema con llamada a función

Leonardo Tadei - Pegasus Tech Supply leonardot en pegasusnet.com.ar
Jue Abr 22 23:10:05 ART 2010


Hola Lucas,

El jue, 22-04-2010 a las 19:20 -0300, Lucas Nastri escribió:
> Hola Leo, ántes que nada gracias por la respuesta. Mirá, yo quería
> implementar AJAX porque me parecía buena idea actualizar solo un div
> en lugar de la página completa. Pero si decís que me puede traer más
> complicaciones que recargar la página completa ni lo pienso y recargo
> la página. De hecho es más sencillo recargar todo que un div por medio
> de AJAX (por lo menos para mi :P).

	Es que no parece el mejor escenario par una implementación AJAX... No
digo que no se pueda, pero mi duda es si vale la pena.
	En rigor, es fácil de probar: lo hacés andar de una manera y de otra,
tomás el tiempo y la complejidad que te lleva, ves la diferencia del
resultado, y sacás tus propias conclusiones de una medición objetiva (o
más o menos)

> Por otro lado me voy a poner a investigar sobre las llamadas
> sincrónicas a funciones porque la verdad no estoy muy seguro de
> saberlo y veo que es algo que tengo que saber.

	Para este caso puntualísimo, creo que sí... pero como no es el caso
habitual, no sé si vale como ejemplo.

> Y otra cosa nada que ver, hice ésta misma pregunta en un foro de
> programación web. Pusé el código como lo puse acá para que se
> entendiera más a que apuntaba mi pregunta. Un usuario me respondió
> (una cosa nada que ver con mi problema pero creo que tiene razón)
> preguntandome para qué creaba variables y asignaba las variables que
> entraban por el vector $_POST, ya que ésto consume memoria. Es algo
> lógico y tiene razón éste usuario, pero al mismo tiempo pensé que si
> en lugar de escribir por ejemplo:
> 
> $nom = $_POST['nom'];
> $ape = $_POST['ape'];
> $tel = $_POST['tel'];
> $dir = $_POST['dir'];
> alta($nom, $ape, $tel, $dir);
> 
> hiciera:
> 
> alta($_POST['nom'], $_POST['ape'], $_POST['tel'], $_POST['dir']);
> 
> el código se vé menos legible, es decir, de la otra manera, creando
> variables, queda más prolijo. ¿Es conveniente, si tuviera 200 o 300
> variables en el vector $_POST o $_GET o el que fuera (cito un ejemplo
> exepcional ya que lo veo complicado tener tantas variables en éstos
> vectores), crear variables para asignar los valores de las variables
> del vector en cuestión a variables que yo creo o en ese caso que son
> tantas variables dentro del vector conviene utilizarlas directamente?.

	Cierto: se consume más memoria (tantos bytes más de RAM por cada
caracter en cada variable repetida.
	Cierto: el código es más difícil de leer (y eso que no se ve el código
de validación y saneo de las entradas!!)

	Si tenés por GET o por POST unas 20 variables, no creo que el impacto
se note.
	De todas formas, esto es fácil de mensurar!!!
	Al final del script ponés:

print "<br><br>RAM: ". memory_get_usage()/1024 . " Kb";

	y te fijás como cambia cuando usás directamente GET y POST y cuando las
pasás a una variable.

	No es una prueba compleja y sí muy ilustrativa.
	Cuando cosas opuestas son ciertas, lo que hace falta es una
medición ;-)

> Gracias por la ayuda!.

	Por nada!
-- 

Leonardo Tadei
leonardot en pegasusnet.com.ar
http://blog.pegasusnet.com.ar
Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key



Más información sobre la lista de distribución Php-avanzado