PHP readfile () внешнего URL - PullRequest
       8

PHP readfile () внешнего URL

8 голосов
/ 20 января 2011

Могу ли я использовать внешние URL в readfile ()?

    header('Content-type: application/pdf');
    header('Content-Transfer-Encoding: binary');
    header('Content-Disposition: inline; filename="'.$file.'" ');
    //header('Content-Length: ' . filesize("http:...z/pub/".$file.'.pdf'));
    @readfile("http://...z/pub/".$file.'.pdf');

Ответы [ 2 ]

19 голосов
/ 20 января 2011

Руководство PHP по readfile гласит:

URL-адрес может использоваться в качестве имени файла с этой функцией, если включена fopen wrappers . См. fopen () для получения дополнительной информации о том, как указать имя файла. См. Поддерживаемые протоколы и оболочки для ссылок на информацию о возможностях, которые имеют различные оболочки, примечания по их использованию и информацию о любых предопределенных переменных, которые они могут предоставить.

В качестве альтернативы вы также можете использовать file_get_contents:

echo file_get_contents("http://...z/pub/".$file.'.pdf');
2 голосов
/ 20 января 2011

Да, согласно странице readfile :

URL может использоваться как имя файла с эта функция, если fopen_wrappers были включены. Увидеть fopen () для более подробной информации о том, как укажите имя файла Увидеть Поддерживаемые протоколы и оболочки для ссылок на информацию о том, что способности, которыми обладают различные обертки, примечания по их использованию и информация на любых предопределенных переменных они могут обеспечить.

...