Foros del Web » Programando para Internet » PHP »

Interpretacion de lenguaje en TPL

Estas en el tema de Interpretacion de lenguaje en TPL en el foro de PHP en Foros del Web. Tengo un archivo que es, default.tpl, el cual contiene almacenado el template de los productos que publico, pero necesito que haga lectura de sintaxis PHP, ...
  #1 (permalink)  
Antiguo 01/08/2008, 19:29
 
Fecha de Ingreso: julio-2008
Mensajes: 37
Antigüedad: 15 años, 8 meses
Puntos: 0
Interpretacion de lenguaje en TPL

Tengo un archivo que es, default.tpl, el cual contiene almacenado el template de los productos que publico, pero necesito que haga lectura de sintaxis PHP, la info es esta....

Cita:
<?PHP
///////////////////// TEMPLATE Default /////////////////////
$template_active = <<<HTML
<style type="text/css">
<!--
.style25 {font-family: tahoma; font-size: 10px; }
-->
</style>
<table width="534" height="79" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="90" height="79" background="http://www.andyimport.com/images/tb01.jpg"><div align="center" class="style25"> {title}<strong> <br>
</strong> </div></td>
<td width="131" background="http://www.andyimport.com/images/tb02.jpg"><div align="center" class="style25"> {category} </div></td>
<td width="136" background="http://www.andyimport.com/images/tb05.jpg"><div align="center" class="style32 style25"> 25 </div></td>
<td width="104" background="http://www.andyimport.com/images/tb06.jpg"><div align="center"> [full-link] {short-story} <br>
[/full-link] <strong><br>
</strong> </div></td>
<td width="73" background="http://www.andyimport.com/images/tb07.jpg"><div align="center"><a href="http://www.andyimport.com/cotizaciones.php"><img src="images/vercarrito.gif" width="24" height="21"></div></td>
</tr>
</table>
HTML;
?>
Aca como pueden ver aparece esto;

$template_active = <<<HTML
HTML
?>

dentro del HTML almacena la informacion del template, pero lo que aparece dentro solo interpreta puro HTML, hay alguna forma de lograr que interprete php??, esta parte <<<HTML, que es exactamente, una especificacion?? o el HTML no tiene mucho que ver, ya que he probado cambiar esa palabra HTML por PHP y sigue sin leer php, espero me puedan ayudar.
  #2 (permalink)  
Antiguo 01/08/2008, 20:59
Avatar de emiliodeg  
Fecha de Ingreso: septiembre-2005
Ubicación: Córdoba
Mensajes: 1.830
Antigüedad: 18 años, 7 meses
Puntos: 55
Respuesta: Interpretacion de lenguaje en TPL

eso se llama heredoc, te paso un pedaso del manual de php

Heredoc

Otra forma de delimitar cadenas es mediante el uso de la sintaxis heredoc ("<<<"). Debe indicarse un identificador (seguido por un salto de línea) después de la secuencia <<<, luego la cadena, y luego el mismo identificador para cerrar la cita.
El identificador de cierre debe comenzar en la primera columna de la línea. Asimismo, el identificador usado debe seguir las mismas reglas que cualquier otra etiqueta en PHP: debe contener solo caracteres alfanuméricos y de subrayado, y debe iniciar con un caracter no-dígito o de subrayado.
Warning Es muy importante notar que la línea con el identificador de cierre no contenga otros caracteres, excepto quizás por un punto-y-coma (;). Esto quiere decir en especial que el identificador no debe usar sangría, y no debe haber espacios o tabuladores antes o después del punto-y-coma. Es importante también notar que el primer caracter antes del identificador de cierre debe ser un salto de línea, tal y como lo defina su sistema operativo. Esto quiere decir \r en Macintosh, por ejemplo. El delimitador de cierre (posiblemente seguido de un punto-y-coma) debe ser seguido también por una nueva línea.
Si esta regla es rota y el identificador de cierre no es "limpio", entonces no se considera un identificador de cierre y PHP continuará en busca de uno. Si, en tal caso, no se encuentra un identificador de cierre apropiado, entonces un error del analizador sintáctico resultará con el número de línea apuntando al final del script.
No es permitido usar la sintaxis heredoc al inicializar miembros de clase. Use otro tipo de sintaxis en su lugar.
Example #1 Ejemplo inválido
<?php
class foo {
public
$bar = <<<EOT
bar
EOT;
}
?>




El texto heredoc se comporta tal como una cadena entre comillas dobles, sin las comillas dobles. Esto quiere decir que no necesita escapar tales comillas en sus bloques heredoc, pero aun puede usar los códigos de escape listados anteriormente. Las variables son expandidas, aunque debe tenerse el mismo cuidado cuando se expresen variables complejas al interior de un segmento heredoc, al igual que con otras cadenas.
Example #2 Ejemplo de uso de una cadena heredoc
<?php
$cadena
= <<<FIN
Ejemplo de una cadena
que se extiende por varias líneas
usando la sintaxis heredoc.
FIN;

/* Un ejemplo más complejo, con variables. */
class foo
{
var
$foo;
var
$bar;

function
foo()
{
$this->foo = 'Foo';
$this->bar = array('Bar1', 'Bar2', 'Bar3');
}
}

$foo = new foo();
$nombre = 'MiNombre';

echo <<<FIN
Mi nombre es "$nombre". Estoy imprimiendo algo de $foo->foo.
Ahora, estoy imprimiendo algo de
{$foo->bar[1]}.
Esto debería imprimir una letra 'A' mayúscula: \x41
FIN;
?>



Note: El soporte heredoc fue agregado en PHP 4.
__________________
Degiovanni Emilio
developtus.com
  #3 (permalink)  
Antiguo 01/08/2008, 23:20
 
Fecha de Ingreso: julio-2008
Mensajes: 37
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Interpretacion de lenguaje en TPL

Ya entiendo, pero como es que dentro del archivo TPL no me interpreta ningun tipo de variables ni nada PHP??
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




La zona horaria es GMT -6. Ahora son las 19:53.