Открытие PDF файла в zip без распаковки, используя PHP

0

Мне было интересно, можно ли открыть PDF файл, который находится в.zip файле без извлечения.zip файла? Я могу открыть PDF, если он не в.zip файле, вот так:

<?
header("Content-type: application/pdf");
header("Content-Disposition: inline; filename=C:\orders\data.pdf");
@readfile("filename=C:\orders\data.pdf");
?>

Я пытался сделать это так, но это не работает:

<?
header("Content-type: application/pdf");
header("Content-Disposition: inline; filename=C:\orders\datacollection.zip\data.pdf");
@readfile("filename=C:\orders\datacollection.zip\data.pdf");
?>

Итак, мой вопрос: возможно ли с PHP открыть PDF файл, который находится в.zip файле без его извлечения?

Я также пробовал это, но это не помогло:

<?php
$zip = new ZipArchive;
$zip->open('weborder.zip');
$contents = $z->getFromName('weborder.pdf');
?>
  • 0
    1. Не используйте @ . Когда-либо. 2. php.net/manual/en/wrappers.compression.php
  • 0
    Почему нет? Вроде работает?
Показать ещё 2 комментария
Теги:
pdf
zip

2 ответа

0
Лучший ответ

Используйте обертку zip://:

Вы можете использовать его с fopen/fread или просто file_get_contents:

$pdf = file_get_contents('zip://datacollection.zip#data.pdf');
echo $pdf;
  • 0
    Я пробовал это, но я получаю следующий результат: gyazo.com/b2420649a49f127b2599f3f4378c2645
  • 0
    У вас все еще установлен заголовок content-type ? Выглядит как данные PDF, но браузер не знает, что это PDF.
Показать ещё 1 комментарий
0

(Отправлено от имени ОП):

Вот решение, благодаря JoeCoder:

header("Content-type: application/pdf");
$pdf = file_get_contents('zip://C:/xampp/htdocs/weborder.zip#weborder.pdf');
echo $pdf;
?>

Ещё вопросы

Сообщество Overcoder
Наверх
Меню