首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

PHP 產生 QR Code 名片並整合至通訊錄

     編輯:PHP 相關知識

vCard 格式說明

掃描後可直接存入手機通訊錄的 QR Code 需符合 vCard 3.0 規範:

BEGIN:VCARD
VERSION:3.0
FN:張三
TEL;TYPE=CELL:13800000000
EMAIL:zhangsan@example.com
ORG:範例公司
TITLE:工程師
END:VCARD

使用 Google Chart API 產生 QR Code

<?php
function generateVCardQR($name, $phone, $email='', $org='', $title='', $size=150)
{
    $vcard = "BEGIN:VCARD\nVERSION:3.0\nFN:$name\nTEL:$phone";
    if ($email) $vcard .= "\nEMAIL:$email";
    if ($org)   $vcard .= "\nORG:$org";
    if ($title) $vcard .= "\nTITLE:$title";
    $vcard .= "\nEND:VCARD";

    $url = 'https://chart.googleapis.com/chart?chs='.$size.'x'.$size.'&cht=qr&chl='.urlencode($vcard).'&choe=UTF-8';
    return "<img src='$url' alt='QR Code' />";
}

// 使用範例
echo generateVCardQR('李四', '13900000000', 'lisi@test.com', '測試科技', '研發工程師');
?>

一般網址 QR Code

<?php
function generateUrlQR($url, $size=150)
{
    $qrUrl = 'https://chart.googleapis.com/chart?chs='.$size.'x'.$size.'&cht=qr&chl='.urlencode($url);
    return "<img src='$qrUrl' alt='QR Code' />";
}
echo generateUrlQR('https://www.example.com');
?>

注意事項

  • Google Chart API 已正式停止維護,建議改用本地函式庫(如 endroid/qrcode、bacon/bacon-qr-code)或 phpqrcode。
  • vCard 欄位若包含中文,務必確保整個字串為 UTF-8 編碼並經 urlencode() 處理。
  • 掃描行為取決於掃描 App:支援 vCard 的 App 會直接跳出「新增聯絡人」,不支援者僅顯示純文字。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved