如何为QR码创建下载链接?

时间:2012-02-17 19:52:50

标签: php qr-code

我正在使用QR google api创建QR码,但希望能够以PHP格式下载图片。我看过网上但似乎找不到任何有用的东西。有什么建议吗?

我正在创建二维码:

function generateQR($url, $width = 150, $height = 150) {
    $url    = urlencode($url);
    $image  = '<img src="http://chart.apis.google.com/chart?chs='.$width.'x'.$height.'&cht=qr&chl='.$url.'" alt="QR code" width="'.$width.'" height="'.$height.'"/>';
    return $image;
}

echo(generateQR('http://google.com')); 

2 个答案:

答案 0 :(得分:3)

您可以使用任何二进制安全功能来检索并输出带有正确标题的图像。

请记住,在PHP配置中,allow_fopen_url必须为On。

类似的东西:

function forceDownloadQR($url, $width = 150, $height = 150) {
    $url    = urlencode($url);
    $image  = 'http://chart.apis.google.com/chart?chs='.$width.'x'.$height.'&cht=qr&chl='.$url;
    $file = file_get_contents($image);
    header("Content-type: application/octet-stream");
    header("Content-Disposition: attachment; filename=qrcode.png");
    header("Cache-Control: public");
    header("Content-length: " . strlen($file)); // tells file size
    header("Pragma: no-cache");
    echo $file;
    die;
}

forceDownloadQR('http://google.com');

答案 1 :(得分:1)

如果您要将文件下载到您的网络服务器上(并保存),请使用copy()

copy($url, 'myfile.png');

这不会提示访问者Web浏览器保存文件。