Вопрос № 43025: Добрый вечер! У меня такой вопрос: как можно получить содержимое файла, если можно: www.mysite.ru/index.php, т.е. целиком структуру, если с того же сервера то можно записать в массив с помощью команды file, а данном случае как?...
Вопрос № 43.025
Добрый вечер! У меня такой вопрос: как можно получить содержимое файла, если можно: www.mysite.ru/index.php, т.е. целиком структуру, если с того же сервера то можно записать в массив с помощью команды file, а данном случае как?
Отвечает: Булыгин Анатолий Алексеевич
Здравствуйте, Грицай Алексей Юрьевич!
Если я правильно понял вопрос, то на удалённом сервере нельзя производить никаких операций с php кодом.
Т.е., будь это Includ или fopen, вам в любом случае будет возвращён только HTML код этого скрипта.
Предположим, что в файле: www.mysite.ru/index.php, находиться следующий код:
<?
$variable = date("H:m:s");
echo'Привет';
?>
В итоге, если вы будетеделать свой скрипт на основе такого кода:
<?
include"www.mysite.ru/index.php";
?>
В браузер выведется только "Привет", т.е. как я ранее говорил - HTML код.
Ответ отправил: Булыгин Анатолий Алексеевич (статус: 1-ый класс)
Ответ отправлен: 14.05.2006, 20:18 Оценка за ответ: 5
Отвечает: Устинов Сергей Евгеньевич
Здравствуйте, Грицай Алексей Юрьевич!
Как бы Вы не обращались к файлу *.php на удаленном компьютере по протоколу http, Вам будет выдан лишь результат работы php скрипта. Вы можете увидеть сам код лишь если php-интерпретатор не обработает этот скрипт - например, если в настройках php.ini не указано, что *.php файлы нужно обрабатывать.
Когда Вы обращаетесь к файлу с того же сервера, то этот файл является локальным для Вашего скрипта, и он его открывает не по протоколу http а как простой файл, когда же Вы открываете его с другого компьютера, сервер вначале обработает его с помощью php, а лишь потом "отдаст" вам результат этой обработки.
--------- Ответы на все вопросы - на сайте www.ya.ru :)
Ответ отправил: Устинов Сергей Евгеньевич (статус: 9-ый класс)
Ответ отправлен: 14.05.2006, 20:32 Оценка за ответ: 5
Отвечает: Alexey Vilchinsky
Здравствуйте, Грицай Алексей Юрьевич!
посмотреть содержимое файла у вас вряд ли получится.
Это сделано в целях безопасности.
Если конечно товарищи-хостеры не сделали полный доступ.
При обращении к файлу вам будет возвращаться результат выполнения файла (index.php), а не сам файл.
--------- Делая людям добро, мы возвращаем его многократно...
Ответ отправил: Alexey Vilchinsky (статус: 7-ой класс)
Ответ отправлен: 15.05.2006, 08:59 Оценка за ответ: 5
Отвечает: Santana
Здравствуйте, Грицай Алексей Юрьевич!
как пример
$fp = fopen("/home/rasmus/file.txt", "r");
$fp = fopen("http://www.php.net/", "r");
$fp = fopen("ftp://user:password@example.com/", "w");
Смотри также fopen(), popen(), fgetc(), и fsockopen().
Ответ отправил: Santana (статус: 2-ой класс)
Ответ отправлен: 15.05.2006, 11:55
Отвечает: Cybernetic_Creature
Здравствуйте, Грицай Алексей Юрьевич!
если вы хотите получить РНР код скрипта с другого сайта, то никак.
вы можете открыть урл как файл (allow_url_fopen ).но вы получите статические данные, результат выполненый РНР.
прочтите в офф документации.
http://php.net/manual/ru/function.file.php
Ответ отправил: Cybernetic_Creature (статус: Специалист)
Ответ отправлен: 15.05.2006, 13:39