print 'Hello World!';

hogehoge備忘録

PHPでPDF帳票を出力する方法

Illsutratorを使用してPDFのテンプレートを作成する

Illustratorを使用して帳票のテンプレートを作成する。
保存するときに保存のオプションで、「互換性のある形式」を「Acrobat 5(PDF1.4)」にして保存する。

 tcpdf のインストール

https://github.com/tecnickcom/tcpdf
から zip をダウンロードするか clone して展開する。

フォントのインストール

http://coliss.com/articles/freebies/best-of-free-japanese-fonts-for-2016.html
好きなフォントをダウンロードしてきて、.tff のフォントファイルを、tcpdf を展開したところに出来る fonts フォルダにコピーする。

fonts フォルダにフォントキャッシュが書き込まれるので、ウェブサーバプログラムのアカウントで読み書きできるようにする。

 FPDI のインストール

https://www.setasign.com/products/fpdi/downloads/
から FPDI のパッケージをダウンロードして、tcpdf とおなじところに展開しておく

#注意点

  • tcpdf/fonts/フォルダにはPHP実行ユーザに書き込み権限が必要ですので、パーミッションを変更しておきましょう。
  • 「ob_end_clean();」と言う一行を Output の直前に加える。
  • 作成したPDFドキュメントをブラウザ経由でダウンロードさせる場合はOutputメソッドの2番目の引数に「D」を指定します。

#PDF出力方法

TCPDFには出力時のオプションがあり、Output()の第二引数に指定する値によって挙動が変わります。

I: ブラウザに出力する(既定)
D: ブラウザで(強制的に)ダウンロードする。
F: ローカルファイルとして保存する。
S: PDFドキュメントの内容を文字列として出力する。

#参考サイト

PHPでPDF帳票を出力する方法(TCPDF + FPDI) - Qiita

風の谷便り: PHPでPDFを出力したいんだけど(解決!)

TCPDFとFPDIの使い方メモ « もみんぎゅぅ

ブラウザ経由でダウンロード - PDFドキュメントの出力 - FPDFを使ったPDF作成

2016年用、日本語のフリーフォント219種類のまとめ -商用サイトだけでなく紙や同人誌などの利用も明記 | コリス

eval関数

eval()関数は文字列をPHPのソースと見なす関数です。

[使用例]

$i=1;
eval("\$val=old('hoge$i');");

#実行結果

引数hoge1のold関数が実行され、戻り値が$valに返される。

#注意点

・evalの引数は""で括り、「;」で終わる。
・$の直前には「\」でエスケープ

cron(クーロン)でphpを自動実行する

クーロンを編集する

crontabコマンドでクーロンを編集します。

# crontab -e

もしくは

# vi /etc/crontab

#書き方

毎日10時に「cron.php」を実行する場合、下記のように記載します。

0 10 * * * /usr/bin/php /var/www/html/cron/cron.php

実行する日時を指定して、実行するphpファイルのパスを絶対パスで指定します。
phpを実行するには「/usr/bin/php 」を書き、その後にファイル名を記載します。
サーバごとに書き方が違うかもしれないので、「/usr/bin/php」か「/usr/local/bin/php」で設定します。

#注意点

複数のphpファイルが、相対パスでincludeやrequire__onceとかされている場合、エラーで動かない。

#参考サイト

Linux:cron(クーロン)でphpを自動実行する | raining

cronの走らせかた - Qiita

CAPTCHA(画像認証) の設置

CAPTCHA(画像認証) の設置方法

  • securimageのサイトからダウンロードします。
  • ダウンロードしたファイルを解凍し「securimage」フォルダを任意のディレクトリへ移動します。
  • $_SESSION["securimage_code_disp"]["default"]が画像認証の正しい文字列

#参考サイト

PHPでフォーム送信時のCAPTCHA(画像認証) を簡単に設置できる「Securimage」の使い方とサンプル|MEMO|T-CREATOR とあるクリエイターのブログ

Composerインストール方法#Win

Composerインストール方法(XAMPP)

1.php_openssl.dllを有効にする
C:\pleiades\xampp\php\php.ini

    ;extension=php_openssl.dll

extension=php_openssl.dll

2.以下のコマンドを実行

cd C:\pleiades\xampp
php -r "readfile('https://getcomposer.org/installer');" | php
composer