Я пишу тест для подсчета количества страниц в PDF-файлах, хранящихся в папке на сервере. Мне удалось заставить его работать на локальном компьютере, я не могу заставить его работать с удаленным файлом.
Это мой код, который работает с локальными файлами:
require_once 'C:\..\application\libraries\fpdi\fpdf.php';
require_once 'C:\..\application\libraries\fpdi\fpdi.php';
$pathToFile = 'C:\Users\..\Desktop\filename.pdf';
$pdf = new FPDI();
$pageCount = $pdf->setSourceFile($pathToFile);
echo $pageCount;
Но если я заменю $ pathToFile ссылкой на удаленный сервер, я получу сообщение об ошибке.
Я пробовал это:
$pdfname = 'http://../filename.pdf';
$pdftext = file_get_contents($pdfname);
$num = preg_match_all('/\/Page\W/', $pdftext, $dummy);
echo 'Num: ' . $num;
Но опять же, когда я использую локальный файл, он работает нормально, но удаленный файл выдает мне ошибку (не удалось открыть поток: сбой HTTP-запроса! HTTP / 1.1 403 Forbidden).
При поиске в Интернете кажется, что это распространенная ошибка, и я видел код для использования curl , но для меня это не имеет смысла, и я тоже не могу заставить его работать. Я видел код для использования pdfinfo , но ссылка в этом посте идет на другой сайт.
Я не хочу ничего скачивать, поэтому использование что-то вроде Imagick также не вариант.
Все, что я ищу, - это простой номер страницы из файла на удаленном сервере. Любая помощь будет высоко ценится.