PHP で QR コードを生成する

Subodh Poudel 2022年6月21日
PHP で QR コードを生成する

この記事では、PHP で QR コードを生成するためのいくつかの方法を紹介します。

PHP で Google QR Code API を使用して QR コードを生成する

QR コードを使用して、URL、wifi パスワード、連絡先情報などの情報を保存できます。この情報は、QR コードでは英数字で表されます。

QR コードは 2 次元で存在するため、画面とハードコピーの形式で表示されることがよくあります。モバイルデバイスを使用して QR コードをスキャンできます。

QR コードの生成は、思ったほど難しくはありません。Google は、QR コードの生成を非常に簡単にする API を提供しています。

URL から直接 GET リクエストで QR コードを作成できます。QR コード生成のベース URL を以下に示します。

https://chart.googleapis.com/chart?

QR コードを定義する他のクエリパラメータを見てみましょう。

  1. cht=qr:作成するチャートを QR コードとして定義します。これは必須のクエリパラメータです。

  2. chs=widthxheightchs は、高さと幅の観点から QR コードのサイズを定義します。これは必須のクエリパラメータでもあります。

  3. chl=datachl は、QR コードが表すデータを定義します。これは必須のクエリパラメータでもあります。

    たとえば、URL の QR コードを生成する必要がある場合は、ここで URL を定義する必要があります。

  4. choe=encoding:QR コードのデータのエンコーディングを定義します。これはオプションのクエリパラメータです。

以下の例を見て、ユーザーを YouTube にリダイレクトする QR コードを作成しましょう。

https://chart.googleapis.com/chart?chs=300x300&cht=qr&chl=https%3A%2F%2Fwww.youtube.com&choe=UTF-8

ここで、QR コードのサイズは 300x300 であり、chs パラメーターで定義されています。記号&は、URL 内のクエリを区切るために使用されます。

クエリパラメータ cht=qr は、チャートが QR コードであることを示します。データについては、chl パラメーターの値として https%3A%2F%2Fwww.youtube.com と記述しています。

以下の値を分解してみましょう。

上記の URL のいくつかの文字を表すために、いくつかのエスケープ文字を使用しました。これらは:

  1. %3A: :を表します。
  2. %2F/を表します。

データは https://www.youtube.com/に翻訳されます。

UTF-8 エンコーディングを使用しました。img HTML タグで上記の URL を使用して、PHP アプリケーションで QR コードを作成できます。

コード例:

<img src="https://chart.googleapis.com/chart?chs=300x300&cht=qr&chl=https%3A%2F%2Fwww.youtube.com&choe=UTF-8" />

その結果、QR コードが Web ページに表示されます。QR コードがスキャンされると、YouTube にリダイレクトされます。

このようにして、PHP で QR コードを生成できます。

著者: Subodh Poudel
Subodh Poudel avatar Subodh Poudel avatar

Subodh is a proactive software engineer, specialized in fintech industry and a writer who loves to express his software development learnings and set of skills through blogs and articles.

LinkedIn