一次元バーコード(JAN)生成プログラムをphpで書いた。

php始めました

ついにweb系に手を出し始めました。
触ってみると変数名に$を付けるのと文字列の結合は.で行うなど少し慣れないところがありますが、勉強していきます。

一次元バーコード(JAN)とは

JANコードは、商品用の流通コードとして商品などに表示され、
コンビニエンスストアやスーパーを中心に広く利用されているPOSシステムで活用されています。
JANコードは、国際的にはEANコードと呼ばれ、アメリカ、カナダにおけるUPCと互換性のある国際的な共通商品コードです。
JANコードは、日本国内のみの呼び方であり、海外ではEANコードと呼びます。)
JAN/EAN/UPC | バーコード講座 | キーエンス

商品についてるあのバーコードのことです。

phpで実装するには?

調べてみるとライブラリがあったんですが、せっかくなので規格を読んで一から実装しました。
以下のページを参考にしました。
JAN/EANコード規格 - バーコードとは? - バーコード情報サイト(日栄インテック)~バーコードリーダの販売 からシステム設計開発まで、専門家がバーコードを使った業務の効率化 をご提案します。
ちゃんと読んで、理解すれば、比較的簡単に実装することが出来ると思います。
php初めてだったので調べながらのところが多かったです。
13桁の半角数字が入力されたのか判断するように正規表現を使ったり、大きさを変えれるようにパラメーターを設けることに苦戦しました。

yahoo!ショッピングを埋め込む

商品のJANコードを打ち込むなら、商品の写真を出したいなと思い、yahoo!ショッピングapiを叩いて情報を引っ張て来ようと思いました。
http://developer.yahoo.co.jp/webapi/shopping/shopping/v1/itemsearch.htmldeveloper.yahoo.co.jp
さらに、なんと、便利なことにyahoo!側に
techblog.yahoo.co.jp
という超便利なサービスがありました。
この二つを使って簡単に埋め込むことが出来ました。

Amazonも埋め込もう

ネットショッピング大手のAmazonも埋め込もうと思ったのですが、JANコードから商品を検索するapiが見つからないので断念しました。
Amazonは独自の番号(ASIN)で商品を管理してるようで結びつけることが難しいと判断しました。
本のコードは検索できるようです。

初めて作ったwebサービスにしてはなかなかいいものが出来たのではないのかなと思います。