首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >CakePHP 2.xQR代码生成和下载

CakePHP 2.xQR代码生成和下载
EN

Stack Overflow用户
提问于 2016-04-04 12:32:23
回答 2查看 2.2K关注 0票数 0

目标:

为一组字符串生成QR代码映像并下载它们。

到目前为止我尝试过的:

我从以下链接中使用了QrCodeHelper:QR代码助手

到目前为止,我只是从一个随机字符串开发一个简单的测试QR代码。

在view.ctp视图中,我写了:

代码语言:javascript
运行
复制
  echo $this->QrCode->text("ABCD"); // This generates a QR code image

在控制器里,我写到:

代码语言:javascript
运行
复制
  public function view() {
      $this->response->type('Content-Type: image/png');
      $this->response->download('qrcode.png');
  }

加载页面时,正在下载图像qrcode.png,但它显示了一个错误:“无法打开此图片,因为照片查看器不支持此文件格式,或者您没有对照片查看器的最新更新”

照片查看器没问题。

我知道之前有一个类似的问题:CakePHP:下载生成的QR代码

但它并没有解决我的问题。

任何帮助都是非常有针对性的。

提前感谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-04-06 04:14:55

您使用过的QrCode助手可能并不适合您需要的东西。帮助器是用来帮助视图的--这是正确的,但是在这种情况下,您需要/需要在控制器中使用助手,这并不真正有效(而且,更复杂的是,这个特定的帮助程序在图像标记中返回QRCode )。

通过使用PHP码,您可以相对容易地做到这一点。

下载PHPQRCode并将文件放在Cake安装中的/vendors/phpqrcode/中,并在控制器中包括以下内容(注意:未经测试)

代码语言:javascript
运行
复制
public function view($text = 'ABCD') {

    // Don't render a view file
    $this->autoRender = false; 

    // Tell the borwser to download the file (slug it, too)
    $this->response->download(Inflector::slug($text) . '.png');

    // Import the vendor lib
    App::import("Vendor", "phpqrcode/qrlib");

    // Bombs away
    QRcode::png($text);

}

有关PHP代码的更多信息:http://phpqrcode.sourceforge.net/

票数 1
EN

Stack Overflow用户

发布于 2016-04-11 12:12:22

您可以在App/lib中下载Qr代码Librairie

所使用的类的名称必须是相同的文件名。

把你的档案写成这样:

?>,而不是你可以简单地使用你的QRcode。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36402770

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档