1. 如何在php中生成qrcode并且把以pdf形式发送email
下载官网提供的类库后,只需要使用phpqrcode.php就可以生成二维码了,当然您的PHP环境必须开启支持GD2。
phpqrcode.php提供了一个关键的png()方法,其中参数$text表示生成二位的的信息文本;参数$outfile表示是否输出二维码图片 文件,默认否;参数$level表示容错率,也就是有被覆盖的区域还能识别,分别是 L(QR_ECLEVEL_L,7%),M(QR_ECLEVEL_M,15%),Q(QR_ECLEVEL_Q,25%),H(QR_ECLEVEL_H,30%);
参数$size表示生成图片大小,默认是3;参数$margin表示二维码周围边框空白区域间距值;参数$saveandprint表示是否保存二维码并 显示。转载,仅供参考。
. 代码如下:
public static function png($text, $outfile=false, $level=QR_ECLEVEL_L, $size=3, $margin=4, $saveandprint=false)
{
$enc = QRencode::factory($level, $size, $margin);
return $enc->encodePNG($text, $outfile, $saveandprint=false);
}
2. 如何实现扫描二维码,实现网址自动跳转
可以把网址生成一个二维码,有两种方式,一个是把网址生成静态码,优点是扫码可以直接跳转,缺点是如果网址越长,生成的二维码越密集,另外如果网址没有备案过,那就可能在某些app中无法直接跳转,还有一种方式是把网址生成活码,优点是二维码一旦生成,内容是可以随时修改,如果网站地址失效可以随时替换,缺点是扫码后会显示一个链接,需要点击链接后再跳转到对应网站。
这里比较推荐的是用活码形式,虽然需要二次跳转,但是稳定性有保障,并且可以随时修改网址地址原二维码是不变的。
制作活码的步骤也很简单:
进入网站登录到操作后台。
添加网址后在二维码内容里会出现一个链接按钮,扫码后点击链接按钮就可以跳转到对应的网址。你还可以在二维码里放入一些介绍文字,图片,甚至是音视频,扫码就直接能查看。
3. 为什么用phpqrcode 生成的带logo的二维码不能扫不能跳转
Thinkphp中没有二维码相关的库,因此我们可以通过整合phpqrcode来完成生成二维码的功能。
下载phpqrcode
下载地址:http://phpqrcode.sourceforge.net/
整合到Thinkphp框架
在“ThinkPHP\Library\Vendor\”下新建目录phpqrcode,将压缩包内容解压到该文件夹下。
调用phpqrcode生成二维码
在IndexController控制器下添加如下方法:
public function qrcode($url="www..com",$level=3,$size=4) { Vendor('phpqrcode.phpqrcode'); $errorCorrectionLevel =intval($level) ;//容错级别 $matrixPointSize = intval($size);//生成图片大小 //生成二维码图片 $object = new \QRcode(); $object->png($url, false, $errorCorrectionLevel, $matrixPointSize, 2); }
访问:http://127.0.0.1/Index/qrcode即可看到生成的二维码。
生成带logo的二维码
先调用phpqrcode生成一张二维码,再使用php的image相关函数将logo图片添加到生成的二维码图片上。
include 'phpqrcode.php'; $value = 'http://www.cnblogs.com/txw1958/'; //二维码内容 $errorCorrectionLevel = 'L';//容错级别 $matrixPointSize = 6;//生成图片大小 //生成二维码图片 QRcode::png($value, 'qrcode.png', $errorCorrectionLevel, $matrixPointSize, 2); $logo = 'logo.png';//准备好的logo图片 $QR = 'qrcode.png';//已经生成的原始二维码图 if ($logo !== FALSE) { $QR = imagecreatefromstring(file_get_contents($QR)); $logo = imagecreatefromstring(file_get_contents($logo)); $QR_width = imagesx($QR);//二维码图片宽度 $QR_height = imagesy($QR);//二维码图片高度 $logo_width = imagesx($logo);//logo图片宽度 $logo_height = imagesy($logo);//logo图片高度 $logo_qr_width = $QR_width / 5; $scale = $logo_width/$logo_qr_width; $logo_qr_height = $logo_height/$scale; $from_width = ($QR_width - $logo_qr_width) / 2; //重新组合图片并调整大小 imageresampled($QR, $logo, $from_width, $from_width, 0, 0, $logo_qr_width, $logo_qr_height, $logo_width, $logo_height); } //输出图片 imagepng($QR, 'helloweixin.png'); echo '<img src="helloweixin.png">';
4. 目前php生成二维码可以有以上几种方式
现在主流是使用 phpqrcode插件,也有自己根据算法自己写的 不过建议是使用插件,毕竟技术成熟
5. 利用phpqrcode生成二维码页面的title怎么设置
此时的 index.php 已经被声明成了图片资源,浏览器又怎么去解析HTML代码。
你应该多写一个文件,譬如 qrcode.php 页面负责生成二维码。
在需要调用的页面中,譬如 index.php 里写HTML代码。你可以多加考虑考虑,还有疑问的话,有兴趣的话,可以多去后盾人看看,那里也许能够给你启迪
6. thinkphp 任何导入qrcode 二维码 命名空间
QRcode::png 改成 \QRcode::png
7. php 生成二维码以后,修改保存图片地址
指定调用函数的第二个参数,是文件存储地址。
publicstaticfunctionpng($text,$outfile=false,$level=QR_ECLEVEL_L,$size=3,$margin=4,$saveandprint=false)
{
$enc=QRencode::factory($level,$size,$margin);
return$enc->encodePNG($text,$outfile,$saveandprint=false);
}
如: QRcode::png($str, $file);
8. php代码如何实现扫描二维码获取扫描者的信息
1、首先创建一个名称为erweima的php文件。
注意事项:
用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。
9. thinkphp3.2 qrcode 怎么在view页面上输出
完美解决Class 'Home\Controller\QRcode' not found 问题
Thinkphp3.2+PHPQRCode二维码生成
1、下载PHPQRCode解压后台把phpqrcode.php存放至ThinkPHP/Extend/Vendor/文件夹中
2、在控制器中IndexController创建一个生成二维码的方法qrcode
[html] view plain
public function qrcode($level=3,$size=4){
//动态网址
$url=__SELF__;
$a=strpos("$url","http://"); //判断http://的位置 假设是20
$codeurl=substr("$url",$a); //从20处开始截取
// mp($url);
// mp($a);
// mp($codeurl);
// exit;
$url=$codeurl;
//静态网址
//$url='http://www.tuzicms.com/index.php/mobile/Photo/detail/id/81';
Vendor('phpqrcode.phpqrcode');
$errorCorrectionLevel =intval($level) ;//容错级别
$matrixPointSize = intval($size);//生成图片大小
//生成二维码图片
//echo $_SERVER['REQUEST_URI'];
$object = new \QRcode();
$object->png($url, false, $errorCorrectionLevel, $matrixPointSize, 2);
}
3、在浏览器中访问http://127.0.0.1/你的项目名/index.php?s=/home/index/qrcode
4、生成效果
10. thinkphp微信支付回调是什么意思
微信支付回调就是说用户通过微信支付完毕时的返回值去判断支付结果。
通过返回的结果,去修改数据库(完成你想实现的功能)
例:用户支付成功->通过回调判断->数据库操作(为会员充值积分)
用户支付失败(或取消支付)->通过回调判断->跳转到支付失败页