PHP 5 pdflib拡張機能をインストールする

挑戦する


pdflibを使用してPDFを生成するかなり大きなコードがあります。 ローカルマシンにはWindows + Denver 3があり、devサーバーにはUbuntu (+標準セット-apache 2.2、php 5.2.10)があります。 タスク:両方のマシンにPHP pdflib拡張機能をインストールします。 問題は次のとおりです。
1)pdflibの無料バージョン- オフサイトの pdflib liteはソースコードの形式でのみ存在します。
2)pdflib liteのソースコードには、PHP pdflib拡張機能自体のコードはありません(すぐにはわかりませんでした。最初にいくつかのコーンを埋めなければなりませんでした)。
3)Ubuntuの場合-リポジトリにpdflibを含む標準パッケージはありません(まだ存在している可能性がありますが、2日間の検索で見つかりませんでした)。
4)Windowsの場合-拡張機能のソースコードがあったとしても、拡張機能をコンパイルするためだけにVisual Studio 6.0をインストールする必要はありません。

Windows + Denver 3のソリューション


ソリューションは非常にシンプルであることが判明しました。
1. http://php.net/releases/ にアクセスして、デンバーにインストールされているPHPインタープリターのバージョンのPECLモジュールコレクションをダウンロードします。 zipアーカイブ: http : //museum.php.net/php5/pecl-5.2.4-Win32.zip

2.このアーカイブから、大切なphp_pdf.dllを取得して配置します

<denwer_root>\usr\local\php5\ext\

3. <denwer_root> \ usr \ local \ php5 \ php.iniにWindows Extensionsセクションがあり、それに行を追加します

extension=php_pdf.dll

4. Denverを再起動します-これで拡張機能のインストールが完了しました。

Ubuntuの場合、すべてが少し複雑になりました。

Ubuntu向けソリューション


1.オフサイトからpdflib liteのソースコードをダウンロードします。
wget http: // www.pdflib.com / binaries / PDFlib / 704 / PDFlib-Lite-7.0.4p4.tar.gz

2.一時ディレクトリに展開して、そこに移動します。
tar -zxvf PDFlib-Lite-7.0.4p4.tar.gz-C / tmp
cd / tmp / PDFlib-Lite-7.0.4p4

3. pdflib liteをコンパイルしてインストールします。
/設定
作る
インストールする

4. peclユーティリティを使用して、PHP pdf.so拡張モジュール コンパイルしてインストールします。
pecl install pdflib

peclがpdflib liteがインストールされているディレクトリの名前を尋ねるとき、指定します

/usr/local

あなたの場合、pdflib liteが別のディレクトリにインストールされていることが判明した場合、それを示します。

5.拡張機能pdf.soを接続します
peclを動作させた後、pecl拡張機能がpdf.so拡張機能をphp拡張機能フォルダーに配置したが、接続していないことが判明する場合があります。 この場合、またはphp.iniの最後に次の行を追加します

extension=pdf.so

または、他の拡張子の.iniファイルが置かれているディレクトリに個別の.iniファイルを作成し、php.iniではなくこの行に書き込みます。

6. Apacheを再起動します。
/etc/init.d/apache2 restart

注釈


1. peclがインストールされていない場合、次のコマンドを使用してインストールする必要があります。
apt-get install dh-make-php php5-dev

2. apt-get installを使用してパッケージをインストールしようとしたときに突然エラーが表示された場合-ファイルがサーバー上で見つからなかった場合、明らかに長い間Ubuntuを更新していません。 コマンドを使用してパッケージのリストを更新する必要があります
apt-get update

3. cp1251エンコーディングを持つWindowsフォントファイルを使用し、ubuntにcp1251ロケールがない場合は、コマンドを使用してインストールする必要があります。
localedef -c -i ru_RU -f CP1251 ru_RU.CP1251

4. pdflib liteの無料版は機能がかなり制限されているため、新しいプロジェクトでは使用しない方が良いでしょう。 新しいプロジェクトでpdfを生成するには、 dompdfまたはFPDFを使用することをお勧めします。

Source: https://habr.com/ru/post/J77675/


All Articles