¿Por qué mostrar el código PHP?
Pues creí ingenuamente que el código PHP se podía descargar usando “guardar como” en los menúes contextuales pero luego me di cuenta que era algo tonto obviamente y es por ello que escribí código PHP que permite visualizar el código PHP.
¿Cómo funciona?
Fácil! (luego de pensar mucho), pues tenemos muchas alternativas:
- Reescribir el nombre del archivo y ponerle otra extension (si, pensé eso)!
- Leer el archivo y mostrarlo como texto sin formato!
- Utilizar la funcion show_source() de PHP!
A continuación explicaré el método 2, que consiste en leer el archivo y mostrarlo como texto sin formato!
Explicación
HTML trabaja con etiquetas <>, todo “texto” dentro de estas etiquetas es interpretado por el navegador, inclusive si usamos las etiquetas <pre>. Como sabemos PHP se escribe dentro de <?php ?>(lo cual una vez leido el archivo, igualmente no se visualizaría); para mostrar “<>” a través de HTML tenemos que usar la siguiente combinación de caracteres
< para “<” y > para “>”
La funcion PHP que se reemplazará los caracters es:
ereg_replace($caracterbuscado, $reemplazarpor, $eneltexto);
Ya que tenemos idea de como reemplazar esos caracteres, ahora viene lo más interesante, leer el archivo PHP.
En PHP tenemos la función fopen(), ésta funcion abre (solo abre) un archivo determinado; tenemos también la funcion fgets(), ésta funcion solo lee LÍNEAS del archivo abierto y finalmente tenemos feof(), quien nos indica si hemos llegado al final del archivo; como última funcion tenemos fclose(), quien se encarga de cerrar el archivo abierto!
Algoritmo [Pseudocódigo]
funcion leerarchivo($archivo.php")
{
$texto = "";
$archivoabierto = abrir("archivo.php","sololectura")
Mientras sea falso el fin del archivo
$texto = $texto + leer($archivoabierto);
cerrararchivo($archivoabierto);
retornamos $texto;
}
Una vez leido el archivo, la funcion “leerarchivo()” nos retonará una variable de tipo cadena, la cual posteriormente tendremos que “limpiar” de dichos caracteres <> que arruinarían la presentación de nuestro código, ello lo hacemos con:
$data = leerarchivo("archivo.php");
$data = ereg_replace("<", "<", $data);
$data = ereg_replace(">", ">", $data);
Donde “$data” es la variable donde recogimos el valor devuelto por “leerarchivo()”, con todo esto ya tenemos listo nuestro código para ser “mostrado”!
Probablemente esta explicación no haya sido muy didáctica/satisfactoria pero ¡Que mejor! que ver el mismo archivo funcionando, el archivo que he desarrollado se llama “LeerPHP.php” (vaya nombre, no?) y lo que hace es leer el código PHP ingresado a través de variables GET [Carpeta=$carpeta&Archivo=$archivo]; aquí tienen al archivo leyéndose a si mismo (recursividad!!).
Ahora que ya podemos leer código PHP, he implementado dicho script en develop.ignoranto.info, todo script php cuenta con un enlace llamado “Ver Código” el cual ejecuta el archivo LeerPHP.php para mostrar el contenido de los scripts PHP!
NOTA:
Existe una funcion en PHP que hace lo mismo que éste script, dicha función se llama “show_source()”, el fin de éste script (LeerPHP.php) es didáctico y demostrativo!
