サンプル・プログラムの実行例

サンプル・プログラム
qr_sample.php | サンプル・プログラム本体 |
qr_img.php | QRcode PHP scriptsのPHP7/8対応版 |
準備
このライブラリはPHP5.x以上に対応していないので、先ほどダウンロードした "qr_sample.zip" の中に入っている "qr_img.php" に差し替える。
0036: //qr_imgライブラリの場所
0037: define('QR_IMAGE', '../../../../common/qr_img/php/qr_img.php');
解説:QRimageのリクエストURLを取得
0129: /**
0130: * QRimageのリクエストURLを取得
0131: * @param string $text QRコードにするテキスト
0132: * @param string $error ECCレベル(L | M | Q | H)
0133: * @param string $type 画像フォーマット(J:JPEG, それ以外:PNG)
0134: * @param string $siz 画像サイズ
0135: * @return stringリクエストURL
0136: */
0137: function getQRimageURL($text, $error='M', $type='P', $size='4') {
0138: return QR_IMAGE . '?d=' . urlencode($text) . '&e=' . $error . 'M&t=' . $type . '&s=' . $size;
0139: }
解説:HTML BODYを作成する
QRコードは、imgタグの中でQRimageのリクエストURLを呼び出している。
0141: /**
0142: * HTML BODYを作成する
0143: * @param string $text QRコードにするテキスト
0144: * @param string $url QRimageリクエストURL
0145: * @return string HTML BODY
0146: */
0147: function makeCommonBody($text, $url) {
0148: $myself = MYSELF;
0149: $refere = REFERENCE;
0150: $width = WIDTH;
0151: $title = TITLE;
0152: $version = '<span style="font-size:small;">' . date('Y/m/d版', filemtime(__FILE__)) . '</span>';
0153:
0154: //QRコード(画像)のタグ
0155: if ($url == '') {
0156: $image = '';
0157: } else {
0158: $image = '<img src="' . $url . '}" />';
0159: }
参考サイト
- QRコード・バーコード:Y.Swetake さん
- QR code.com:デンソーウェーブ
ぱふぅ家のホームページも携帯(現在はiモードのみ)に対応しているので、PC版のトップページに QR コードを表示してみようと考えた。
Y.Swetake さんのサイトにPHPのスクリプトやクラス・ライブラリが公開されている。今回は、これを利用させていただくことにした。なお、このライブラリを利用するには、GD 2.0以上 が組み込まれている必要がある。
なお、QR コードは株式会社デンソーウェーブが開発し、その規格・仕様自体はオープンであるが、QR コードという名称だけはデンソーウェーブの登録商標となっている。
(2020年12月19日)PHP8対応。全面改訂。