s

PHP로 pdf의 페이지수를 얻기

· 2023-08-10 (목) 10:14:29 · 2162 · 1

PHP에서 PDF 파일의 페이지 수를 얻기 위해서는 외부 라이브러리를 사용해야 합니다. 예를 들어, `mikehaertl/php-pdftk` 라이브러리를 사용하여 PDF 페이지 수를 얻을 수 있습니다.

먼저, `composer`를 사용하여 `mikehaertl/php-pdftk` 라이브러리를 설치합니다. 프로젝트 디렉토리에서 다음 명령을 실행하면 됩니다:

[code]
composer require mikehaertl/php-pdftk
[/code]

다음은 PHP 코드를 사용하여 PDF 파일의 페이지 수를 얻는 예시입니다:

[code]
<?php
require 'vendor/autoload.php';

use Mikehaertl\ShellCommand\Command;

$pdfFile = 'example.pdf'; // PDF 파일 경로
$pdftkPath = '/path/to/pdftk'; // pdftk 실행 파일 경로

// pdftk 명령 준비
$command = new Command($pdftkPath);
$command->addArg($pdfFile)
->addArg('dump_data')
->addArg('output')
->execute();

if ($command->isSuccessful()) {
$output = $command->getOutput();
$pageCount = 0;

// 페이지 수 파싱
preg_match('/NumberOfPages: (\d+)/', $output, $matches);

if (isset($matches[1])) {
$pageCount = intval($matches[1]);
}

echo "PDF 페이지 수: $pageCount";
} else {
echo "PDF 정보를 가져오는 동안 오류가 발생했습니다.";
}
?>
[/code]

위 코드에서는 `mikehaertl/php-pdftk` 라이브러리를 사용하여 외부 명령인 pdftk를 실행합니다. `$pdfFile` 변수에 원하는 PDF 파일의 경로를 지정하고, `$pdftkPath` 변수에 pdftk 실행 파일의 경로를 지정해야 합니다. 그런 다음, `Command` 클래스를 사용하여 pdftk 명령을 실행하고 결과를 분석하여 페이지 수를 얻습니다.

위의 예시 코드에서는 `getOutput()` 메서드를 통해 pdftk 명령의 출력을 가져오고, 정규식을 사용하여 출력에서 페이지 수를 추출합니다. 최종적으로, 페이지 수를 출력하는 부분은 `$pageCount` 변수를 사용하여 변경할 수 있습니다.

|

댓글 1개

hacky way 의 방법이라면
echo exec('strings example.pdf | grep -w "Page" | wc -l');
이 있습니다.

그러나 제대로 개발하려면 본문처럼 3rd party 프로그램을 사용해야겠죠.
댓글을 작성하시려면 로그인이 필요합니다.

개발자팁

5,403건

개발과 관련된 유용한 정보를 공유하세요. 질문은 QA에서 해주시기 바랍니다.

+
분류 제목 글쓴이 날짜 조회
node.js 23-08-13 조회 2,184
정규표현식 23-08-12 조회 2,062
node.js 23-08-11 조회 2,243
PHP 23-08-10 조회 2,163
node.js 23-08-09 조회 2,378
PHP 23-08-08 조회 2,523
node.js 23-08-07 조회 1,961
node.js 23-08-06 조회 2,258
PHP 23-08-05 조회 3,540
PHP 23-08-04 조회 2,597
JavaScript 23-08-03 조회 1,669
node.js 23-08-02 조회 1,564
node.js 23-08-01 조회 2,012
MySQL 23-07-31 조회 1,888
MySQL 23-07-30 조회 1,461
JavaScript 23-07-29 조회 1,886
웹서버 23-07-29 조회 5,211
PHP 23-07-28 조회 2,263
PHP 23-07-26 조회 2,598
기타 23-07-25 조회 1,996
jQuery 23-07-25 조회 3,138
23-07-25 조회 1,587
23-07-21 조회 1,976
23-07-21 조회 1,907
PHP 23-07-24 조회 2,136
MySQL 23-07-23 조회 1,847
PHP 23-07-23 조회 2,025
PHP 23-07-22 조회 3,194
PHP 23-07-22 조회 1,431
node.js 23-07-21 조회 5,291