気ままなDevLog

webとかプログラミングについての雑記帳

phpでQRコードを出力する(実践編)

讃容日記さんのphp_qrを使って実際にQRコードを出力するまでやってみた。

参考サイトをいろいろ見るとphp_qrをインストールすれば使えるようなことが書いてあったのだが、いくらやってもエラーが発生してしまいます。
どうもGDが入ってないと使えないみたいである。

GDのインストール

yum -y install php-gd

php_qrのインストール

php_qrのインストールにはphpizeを利用するので、php-develが入ってなければインストール。

yum -y install php-devel

今回はphp_qr最新バージョンの0.3.1を使ってみました。

秋のPECLまつり - 讃容日記
http://d.hatena.ne.jp/rsky/20070918/1190041651

また、PNGやJPEGなどでも出力できるようにするので--enable-qr-gdオプションをつけます。

$ wget http://www.opendogs.org/pub/php_qr-0.3.1.tgz
$ tar zxvf php_qr-0.3.1.tgz
$ cd php_qr-0.3.1
$ phpize
./configure --enable-qr-gd
$ make
$ sudo make install

extentionとして読み込ませるために/etc/php.d/qr.iniを作成。

extension=qr.so

サンプルコード

<?php
$data = 'test';
$data = mb_convert_encoding($data, 'SJIS-win', 'UTF-8');
$options = array(
    'format' => QR_FMT_PNG,
    'magnify' => 2,
);
header('Content-Type: ' .qr_mimetype($options['format']) );
qr_output_symbol(null, $data, $options);

これで出ました。


こちらがとても参考になりました。
PHPQRコードを作ろう - PHPプロ!TIPS+
http://www.phppro.jp/phptips/archives/vol46/1