[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