Ver Mensaje Individual
  #1 (permalink)  
Antiguo 29/10/2007, 06:45
Avatar de ftabilo
ftabilo
 
Fecha de Ingreso: junio-2007
Ubicación: En el Pc
Mensajes: 139
Antigüedad: 16 años, 10 meses
Puntos: 3
Leer Archivos HTML y Reemplazar cadenas en el contenido

Hola:

Llevo tiempo programando en ASP, y últimamente he estado aprendiendo PHP, me parece muy interesante y la verdad es que quiero desarrollar un sitio personal usando este último.

Les cuento, quiero separar el código PHP del HTML tal como lo hago en ASP, es decir, uso plantillas html, las cuales uso como base para mostrar contenido dinámico, reemplazando cierto texto en los archivos por el contenido de variables, finalmente despliego la plantilla con los cambios en el navegador:

Por ejemplo una plantilla html

Código HTML:
<html>
<head>
<title></title>
</head>
<body>
<div align="center">
<br/>
bienvenido <b>$Usuario</b>
</div>
</body>
</html> 
Mi función para leer archivos:

Código PHP:
<%
Function 
LeerArchivos(archivo)
Dim fso
Const ForReading 1
Set fso
=CreateObject("Scripting.FileSystemObject")
Set archivo fso.OpenTextfile(archivoForReading False)
lee_Archivo archivo.ReadAll
archivo
.close
End 
Function
%> 
Uso la función para leer una plantilla, asigno el contenido del archivo a una variable (Pagina) y luego reemplazo cadenas de texto por el contenido de otras variables, y finalmente, muestro el contenido de la variable Pagina (Con las modificaciones) en el navegador:

Código PHP:
<!--#include file="/librerias/LeerArchivos.asp" -->
<%
Dim Pagina
Pagina 
LeerArchivos(Server.MapPath("Plantilla.html"))
Pagina Replace(Pagina,"$Usuario",Session("Nombre_Usuario"))
Response.Write(Pagina)
%> 
Un ejemplo de la salida de este programa:

Bienvenido Francisco

De esta forma, reemplazo ciertas cadenas de texto de una plantilla HTML, así logro un codigo claro y facil de mantener, separando el HTML y el ASP en archivos distintos.

Mi pregunta es si hay una forma de hacer lo mismo en PHP, ya que he buscado en las FAQ'S de PHP del foro, en Google, y preguntado a colegas, sin embargo no he encontrado una forma de hacer esto en PHP.

Saludos , arriba PHP !!!

Última edición por ftabilo; 29/10/2007 a las 06:51