Título: Estructura de datos
Publicado por: EFEX en 26 Junio 2011, 18:13 pm
Vengo armando un sitio, tiene un toque social, esta armado en php y el còdigo se me, digamos, alargo bastante con 32 archivos .php. Mi idea es simplificar en lo que pueda al codigo fuente y como a pasado tiempo desde la ultima ves que lo edite, puede que me olvide de algunas funciones o clases, entonces me preguntaba si existe un programa, que digamos... tome los archivos php y arme un tipo de estructura de datos con las clases y funciones que excribì.
Saludos
Título: Re: Estructura de datos
Publicado por: EFEX en 27 Junio 2011, 14:25 pm
De verdad no existe un programa que tome los archivos .php y me arme un estilo de diagrama, estructura de datos, lo que sea con las clases, funciones, llamadas, etc ? Asi que improvisè ;D, de momento armè este, es medio brusco pero funciona para mi codigo, algo me sirve. <?php class EDD { private $dir = array('archivo.php', 'archivo2.php'); private $contenido; function __construct() { $cant_archivos = count($this->dir); for ($c = 0; $c < $cant_archivos; $c++) { echo "Se encontro el archivo: ".$this->dir[$c]."<br>"; $this->leer($this->dir[$c]); }else{ echo "No existe el archivo: ".$this->dir[$c]."<br>"; } } } function leer($archivo) { echo "Leyendo el archivo...<br>"; $this->objetos(); } function objetos() { if ($this->contenido) { $longitud = strlen($this->contenido); echo "\$this->contenido obtenido, tamaño ".$longitud."<br>"; $sincomentarios = explode("<?php", $this->contenido); $max = count($sincomentarios); for ($i=1; $i<$max; $i++) { $sincomentarios[$i] = strstr($sincomentarios[$i], "?>", true); } echo "Quitando comentarios <?php ... ?><br>"; //echo $classes_encontradas; for ($i = 1; $i <= $classes_encontradas; $i++) { $clasess[$i] = trim(strstr($clases[$i], "{", true)); echo "Encontrado Class <b>".$clasess[$i]."</b><br>"; $funciones_encontradas = substr_count ( $clases[$i], 'function '); for ($a = 1; $a <= $funciones_encontradas; $a++) { //echo $a; $funciones = explode("function ",$clases[$i] ); $nombree = trim(strstr($funciones[$a], "{", true)); echo "|___Function <b>".$nombree."</b><br>"; } } //echo "<pre>"; //print_r($funciones); //echo "</pre>"; }else{ echo "No se pudo obtener el \$contenido"; } } } $showtime = new EDD(); ?>
(http://img802.imageshack.us/img802/3184/unled2xk.jpg)
|