Foros del Web » Programando para Internet » PHP »

Mezclar lenguajes

Estas en el tema de Mezclar lenguajes en el foro de PHP en Foros del Web. Hola, qué tal. Me gustaría que me dijeran por qué sí y por qué no combinar lenguajes en un mismo archivo. Entiendo que la legibilidad ...
  #1 (permalink)  
Antiguo 27/02/2012, 08:29
Avatar de Martriay  
Fecha de Ingreso: noviembre-2010
Mensajes: 80
Antigüedad: 14 años, 1 mes
Puntos: 5
Mezclar lenguajes

Hola, qué tal. Me gustaría que me dijeran por qué sí y por qué no combinar lenguajes en un mismo archivo.

Entiendo que la legibilidad es importante, pero me gustaría que me digan por qué, según tengo entendido (capaz no es así), no es conveniente/higiénico poner en un mismo archivo más de un lenguaje.

Caso típico, sitio.php: está lleno de etiquetas php y html por todos lados, con el js metido por acá, por allá, capaz el css también.

¿Por qué sí y por qué no?
¿Cuál sería una práctica correcta?
Caso puntual de PHP (ya que es con el que yo me manejo):

Código PHP:
echo "<p>",$contenido,"</p>"
ó
Código HTML:
Ver original
  1. <p><?=$contenido?></p>

¿Cuál? ¿por qué?
  #2 (permalink)  
Antiguo 27/02/2012, 08:40
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 5 meses
Puntos: 1532
Respuesta: Mezclar lenguajes

no es que no puedas embeber o combinar, sino el modo en que lo haces.

un código "feo" es difícil de mantener que un código bien ordenado, por ejemplo ¿que utilidad tiene hacer echo como loco para imprimir todo el contenido HTML?

por sierto los short tags en PHP están depreciados, por lo que quedaría:

Código PHP:
Ver original
  1. <p><?php echo $contenido; ?></p>

dentro de las buenas practicas encuentras muchos patrones, el más común es el MVC donde puedes usar un motor de plantillas en las vistas para aligerar la carga de PHP en las mismas y darles un atractivo mayor para los diseñadores y maquetadores, entre ellos existe smarty y últimamente twig, conde lo anterior quedaría como:

Código HTML:
Ver original
  1. <p>{{contenido}}</p>

en fin, todo depende de como lo implementes y en la manera en que sea más organizado y cómodo para mantener.
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 27/02/2012, 08:46
Avatar de mackiechan  
Fecha de Ingreso: junio-2009
Ubicación: Maracay, Venezuela
Mensajes: 51
Antigüedad: 15 años, 6 meses
Puntos: 12
Respuesta: Mezclar lenguajes

A medida que va creciendo el desarrollo en tu web y la cantidad de paginas que vas haciendo o el tamaño de cada una va haciendo mas engorroso todo, hacer una actualizacion o aplicar alguna funcion nueva puede volverse una tarea que consumiría demasiado tiempo o incluso hasta casi imposible, mas de una vez he tenido que deshacer varios proyectos personales por esto, siempre empiezo creando un mini CMS propio, pero aun hoy dia termino metiendo un poco de html por aqui y por alla entre el php.

Otro punto es la velocidad al abrir o ejecutar algo en tu pagina, aca influyen varios factores importante y entre estos esta la forma en que trabajas tu web, cuando trabajas de una forma ordenada la pagina fluira mejor.
  #4 (permalink)  
Antiguo 27/02/2012, 10:15
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 13 años, 5 meses
Puntos: 793
Respuesta: Mezclar lenguajes

Cita:
Iniciado por maycolalvarez Ver Mensaje
por sierto los short tags en PHP están depreciados, por lo que quedaría:

Código PHP:
Ver original
  1. <p><?php echo $contenido; ?></p>
A los de PHP se les ocurrió la idea de sacar de short tags la sintaxis <?= ?>

A partir de PHP 5.4 vamos a ver por todos lados:

Código PHP:
Ver original
  1. <?= 'Hola Mundo'; ?>

No apoyo esto, pero con tanto perezoso.
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #5 (permalink)  
Antiguo 27/02/2012, 10:21
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 5 meses
Puntos: 1532
Respuesta: Mezclar lenguajes

vaya @andresdzphp definitivamente la gente de PHP si les gusta confundirnos, primero lo deprecian, y ahora lo apoyan , bueno con la resucitación de goto que se puede esperar .

sinceramente deberían ir más allá, como embeber unas etiquetas al estilo de smarty o muchos otros sistemas de plantillas (sin llegar a los taglibs de java ), sin necesidad tampoco de utilizar el código de las mismas, por ejemplo me parece más practico:

{{$variable}}

que

<?= $variable ?>

se que a muchos no les gustan los sistemas de plantillas, pero en realidad un código inundado de <?php echo $var ?> se ve horrible
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...

Última edición por maycolalvarez; 27/02/2012 a las 10:36
  #6 (permalink)  
Antiguo 27/02/2012, 10:23
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 7 meses
Puntos: 2135
Respuesta: Mezclar lenguajes

Exacto, <?= siempre va a funcionar, estén o no activados los short_tags, por lo que ellos recomiendan para mayor portabilidad siempre usar <?php en todo...
  #7 (permalink)  
Antiguo 27/02/2012, 21:23
Avatar de Martriay  
Fecha de Ingreso: noviembre-2010
Mensajes: 80
Antigüedad: 14 años, 1 mes
Puntos: 5
Respuesta: Mezclar lenguajes

El caso particular que me hace dudar lo mencionaron más arriba: en un mismo .php tengo mucho código y html, en vez de separarlo y hacer includes (porque son varias partes php, partes html, partes php, partes html; igual es un proyecto ya terminado pero me quedó la duda), si convenía hacer:

<?php x líneas ?>
<html>x lineas</html>
<?php x líneas ?>
etc

ó

<?php x líneas
echo "<html>x lineas</html>";
?>
  #8 (permalink)  
Antiguo 27/02/2012, 21:35
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 13 años, 5 meses
Puntos: 793
Respuesta: Mezclar lenguajes

Definitivamente es muy mala práctica usar la segunda opción, como te dicen arriba:

Cita:
¿que utilidad tiene hacer echo como loco para imprimir todo el contenido HTML?
NINGUNA!!! para que usar el intérprete PHP para imprimir HTML estático, no tiene sentido.

- es más o menos bueno hacer lo que haces en la primera opción.

- maycolalvarez ya te dijo que es lo ideal.

Edito:

Cita:
Caso típico, sitio.php: está lleno de etiquetas php y html por todos lados, con el js metido por acá, por allá, capaz el css también.
Es mejor separar todo, para que el código sea mucho más fácil de mantener.

Saludos.
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP

Última edición por andresdzphp; 27/02/2012 a las 21:49

Etiquetas: html, lenguajes, mezclar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 18:15.