У меня есть script с именем MakeAvatar.php
. И когда я передаю ему аргумент (как метод GET), он создает изображение (аватар) на основе этого аргумента:
http://example.com/MakeAvatar.php?id=12345
// Output: 1234.jpg
И я могу просто сохранить это изображение следующим образом:
file_put_contents("../img/avatar/".$id.".jpg", file_get_contents("http://localhost/MakeAvatar.php?id=$id"));
Теперь, когда script (MakeAvatar.php
) находится вне корневого каталога:
\out
\MakeAvatar.php
\root
\include
\register.php
\img
\avatar
И я не могу открыть MakeAvatar
как http-запрос в register.php
. Я просто могу получить к нему доступ по этому пути:
$_GET['id'] = $id; // passing
file_put_contents("../img/avatar/".$id.".jpg", file_get_contents("../out/MakeAvatar.php"));
Но код выше не работает. Потому что file_get_contents()
просто открывает этот script, а не выполняет его. Тогда результат будет нечетким:
Также, когда я открываю это изображение редактором, он содержит содержимое MakeAvatar.php
(все его коды). Таким образом, кажется, что проблема проходит.
Ну, как я могу выполнить этот файл?
. . . file_get_contents("how can I execute MakeAvatar.php in here ?")
Примечание. Я не могу изменить содержимое MakeAvatar.php
. Также я не могу изменить его каталог (я имею в виду, что я не могу поместить его в root).