Cita:
Iniciado por Cluster No he dicho que lo que tu haces no sea correcto (en su contexto de uso).
Pero si que digo que de forma externa TU no puedes apuntar a un script .php para leer su contenido. Ejemplo .. apunta tu ejemplo de código a "http://www.forosdelweb.com/showthread.php" y muestra el código de ese script.
Si estamos en el mismo servidor (incluso bajo un servidor compartido mal configurado) se puede hacer lo que mencionas (ver incluso el contendio de archivos de los vecinos). De hecho .. da igual si es .txt o .loquesea .. lo vas a leer igual .. También podrías leerlo con file() .. con fopen() y fgets() .. en fin .. con cualquier función de acceso al sistema de archivos. Pero el detalle es que estás viendo un archivo de -tu sistema de archivos-.
Creo que nos confundimos todos . .aquí unos hablaban de una cosa y otros de otra .. por eso intenté que se deje claro la situación. Fijate en la pregunta inicial ..
Yo con eso "deduzco" (por eso mi contra-pregunta):
Que se está hablando de la situación:
Servidor A (el mio) .. ahí corren mis scripts PHP .. (o incluso ni eso .. pretende bajarlo con algún software de gestión de descargas de sitios/páginas ) -----> quiero ver el código fuente "PHP" de: Servidor B (no es mio .. es
http://www.noesmio.com/script.php) ...
¿quedó claro la confusión?
Un saludo,
A ver si me explico yo tengo un archivo que se llama muestra.php que hace un
echo "hola";
Entonces si hago un $contenido = file_get_contents() desde cualquier parte, la variable $contenido va a tener "hola" (sin las comillas), no?
Entonces por el amor de Dios, explicame porqué no puedo hacer
echo "echo 'chau';";
Se entiende? en vez de mandar HTML en la salida del script, mando más código QUE NUNCA ES COMPILADO.
Desde otro script tomo ese código y lo ejecuto con la función eval() que para eso está.
Otra pregunta:
Si muchos dicen que no se puede, por favor diganme porqué a mi me funciona, ya que lo he hecho muchas veces con servidores como Silicom, ******** o eTower.
Saludos.-
PD: Me parece que el link de ejemplo que han puesto está roto.
Y otra cosita más quiero que quede bien claro que no pretendo ver el código PHP de un script, sino que la pregunta inicial de esta discución fue si se puede poner código fuente en un servidor y ejecutarlo desde otro, obviamente, la única forma de hacerlo es obtenerlo por FTP o por HTTP no? Eso es lo que pretendo explicar.
Otra más:
Creo que nos confundimos todos . .aquí unos hablaban de una cosa y otros de otra .. por eso intenté que se deje claro la situación. Fijate en la pregunta inicial ..
Está claro en la pregunta inicial, a mí entender, que el link muestra código XML por pantalla que es exáctamente lo mismo que estoy diciendo no? Nunca dije de usar las funciones file() porque necesitás autenticar para obtener archivos de otro lado y muchos servers no admiten eso (por experiencia).