Відповіді:
Припускаю, ви хочете отримати вміст, згенерований PHP , якщо так, використовуйте:
$Vdata = file_get_contents('http://YOUR_HOST/YOUR/FILE.php');
В іншому випадку, якщо ви хочете отримати вихідний код файлу PHP , це те саме, що файл .txt:
$Vdata = file_get_contents('path/to/YOUR/FILE.php');
eval()
або якщо ви маєте справу зі складнішим кодом: 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();
(див. Документацію ob_get_clean )
Якщо ви використовуєте http: // , як запропонував eyze, ви зможете лише прочитати вихід сценарію PHP. Ви можете прочитати сам сценарій PHP, лише якщо він знаходиться на тому ж сервері, що і ваш запущений сценарій. Тоді ви могли б використовувати щось подібне
$Vdata = file_get_contents('/path/to/your/file.php");
Якщо ви хочете завантажити файл, не запускаючи його через веб-сервер, має працювати наступне.
$string = eval(file_get_contents("file.php"));
Після цього буде завантажено оцінку вмісту файлу. Файл PHP необхідно буде повністю сформований з <?php
і ?>
теги для eval
оцінки його.
Теоретично ви можете просто використовувати fopen, а потім використовувати stream_get_contents.
$stream = fopen("file.php","r");
$string = stream_get_contents($stream);
fclose($stream);
Це повинно прочитати вам весь файл у рядку $, і не повинно оцінювати його. Хоча я здивований, що file_get_contents не працював, коли ви вказали локальний шлях ....
Крім того, ви можете почати вихідну буферизацію, зробити включення / вимагати, а потім зупинити буферизацію. За допомогою ob_get_contents () ви можете просто отримати речі, які були виведені цим іншим файлом PHP, в змінну.
Якщо у вашому файлі є такий варіант повернення:
<?php return array(
'AF' => 'Afeganistão',
'ZA' => 'África do Sul',
...
'ZW' => 'Zimbabué'
);
Ви можете отримати це до такої змінної:
$data = include $filePath;
file_get_contents () не працюватиме, якщо на вашому сервері вимкнено allow_url_fopen . У більшості спільних веб-хостів його вимкнено за замовчуванням через ризики безпеки. Чи не Крім того , в PHP6 , то allow_url_fopen варіант більше не існує , і всі функції будуть діяти так , як ніби вона permenantly відключена. Отже, це дуже поганий метод для використання.
Найкращим варіантом для використання, якщо ви отримуєте доступ до файлу через http, є cURL