Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/12/2008, 02:56
dobeto
 
Fecha de Ingreso: diciembre-2003
Ubicación: Salamanca
Mensajes: 123
Antigüedad: 20 años, 4 meses
Puntos: 3
Pasar contenido de un script a una variable

Hola gente.
A ver si me podéis echar una manita con esto:

Tengo una plantilla 'miPlantilla.php':

Código php:
Ver original
  1. <p><?php echo 'un p&aacute;rrafo'?></p>

...y quiero incluirla en la plantilla general 'plantillaGeneral.php':
Código php:
Ver original
  1. <html>
  2. <head><?php echo $titulo ?></head>
  3. <body>
  4. <?php echo $contenido?>
  5. </body>
  6. </html>

...pero sólo si la configuración de 'miPlantilla.php' (miPlantilla.config) lo pide.
El CMV Symfony (de donde he sacado esto) hace lo siguiente (un resumen):

'index.php':
Código php:
Ver original
  1. $titulo= 'El t&iacute;tulo.';
  2. $contenido= include('miPlantilla.php');

Cuando obtengo el contenido de 'miPlantilla' escribe script (a mí me parece lo lógico), con lo que el contenido aparece antes que que la plantilla general y la variable '$contenido' de 'plantillaGeneral.php' no contiene nada

¿Esto que quiero es posible o el ejemplo de Symfony no es más que un ejemplo?

Código original:
Código php:
Ver original
  1. //Symfony 1.1 Guía Definitiva
  2. //2.1.2.2 'Los elementos de la vista.' pág.24
  3.  
  4. //1 Controlador (index.php)
  5.    require('vista.php');  
  6.  
  7. //1.2 Parte de la vista en miPlantilla.php
  8.     <h1>Lista artículos</h1>
  9.     <ul>
  10.         <?php foreach($articulos as $articulo): ?>
  11.         <li><?php echo $articulo['fecha'] ?></li>
  12.         <li><?php echo $articulo['titulo'] ?></li>
  13.         <?php endforeach; ?>
  14.     </ul>
  15.  
  16. //1.2 Parte de la lógica (vista.php)
  17.     <?php
  18.         $titulo= 'Listado de artículos';
  19.         $contenido= include('miPlantilla.php');
  20.     ?>
  21.  
  22. //1.3 Layout de la vista
  23.     <html>
  24.     <head>
  25.         <title><?php echo $titulo ?></title>
  26.     </head>
  27.     <body>
  28.     <?php echo $contenido ?>
  29.     </body>
  30.     </html>

Última edición por dobeto; 11/12/2008 a las 03:00 Razón: Rectificación código