Respuestas:
Supongo que desea obtener el contenido generado por PHP , si es así, use:
$Vdata = file_get_contents('http://YOUR_HOST/YOUR/FILE.php');
De lo contrario, si desea obtener el código fuente del archivo PHP , es lo mismo que un archivo .txt:
$Vdata = file_get_contents('path/to/YOUR/FILE.php');
eval()
o si está tratando con un código más complicado: github.com/nikic/PHP-Parser .
$Vdata = file_get_contents(get_template_directory_uri() . '/path/to/file/in/theme.text');
ob_start();
include "yourfile.php";
$myvar = ob_get_clean();
$myvar = ob_get_clean();
(consulte la documentación de ob_get_clean )
Si está utilizando http: // , como sugirió eyze, solo podrá leer la salida del script PHP. Solo puede leer el script PHP en sí mismo si está en el mismo servidor que el script en ejecución. Entonces podrías usar algo como
$Vdata = file_get_contents('/path/to/your/file.php");
Si desea cargar el archivo sin ejecutarlo a través del servidor web, lo siguiente debería funcionar.
$string = eval(file_get_contents("file.php"));
Esto cargará y luego evaluará el contenido del archivo. El archivo PHP deberá estar completamente formado con etiquetas <?php
y ?>
para eval
poder evaluarlo.
En teoría, podría usar fopen y luego usar stream_get_contents.
$stream = fopen("file.php","r");
$string = stream_get_contents($stream);
fclose($stream);
Eso debería leer todo el archivo en $ string por usted, y no debería evaluarlo. Aunque me sorprende que file_get_contents no funcionara cuando especificaste la ruta local ...
Alternativamente, puede iniciar el almacenamiento en búfer de salida, realizar una inclusión / solicitud y luego detener el almacenamiento en búfer. Con ob_get_contents (), puede simplemente obtener el material generado por ese otro archivo PHP en una variable.
Si su archivo tiene una declaración de devolución como esta:
<?php return array(
'AF' => 'Afeganistão',
'ZA' => 'África do Sul',
...
'ZW' => 'Zimbabué'
);
Puede llevar esto a una variable como esta:
$data = include $filePath;
file_get_contents () no funcionará si su servidor tiene allow_url_fopen desactivado. La mayoría de los servidores web compartidos lo tienen desactivado de forma predeterminada debido a riesgos de seguridad. Además, en PHP6 , la opción allow_url_fopen ya no existirá y todas las funciones actuarán como si estuviera permanentemente desactivada. Así que este es un método muy malo para usar.
Su mejor opción para usar si está accediendo al archivo a través de http es cURL