共计 3105 个字符,预计需要花费 8 分钟才能阅读完成。
企业想要扩大本人的电商业务,开发一款好的电商零碎必不可少。电商商城网站就是不错的抉择,上面就来分享一下网站的代码。
代码局部
namespace app\home\controller; use think\Page;use think\Verify;use think\Db;use think\Image;class Index extends Base{public function index()
{$web_list = S('web_index_data');
if(!$web_list){$web_list = M('web')->where(array('web_show'=>1))->order('web_sort')->select();
if($web_list){foreach ($web_list as $kb=>$vb){$block_list = M('web_block')->where(array('web_id'=>$vb['web_id']))->order('web_id')->select();
if(is_array($block_list) && !empty($block_list)) {foreach ($block_list as $key => $val) {// 将变量输入到页面
$val['block_info'] = unserialize($val['block_info']);
$web_list[$kb][$val['var_name']] = $val['block_info'];
}
}
}
S('web_index_data',$web_list);
}
}
$this->assign('web_list', $web_list);
return $this->fetch();}
布告详情页
public function notice() {return $this->fetch();
}
public function qr_code_raw() {ob_end_clean();
// 导入 Vendor 类库包 Library/Vendor/Zend/Server.class.php
vendor('phpqrcode.phpqrcode');
//import('Vendor.phpqrcode.phpqrcode');
error_reporting(E_ERROR);
$url = urldecode($_GET["data"]);
\QRcode::png($url);
exit; }
用户分销二维码
public function qr_code() {ob_end_clean();
vendor('topthink.think-image.src.Image');
vendor('phpqrcode.phpqrcode');
error_reporting(E_ERROR);
$url = isset($_GET['data']) ? $_GET['data'] : '';
$url = urldecode($url);
$head_pic = input('get.head_pic', '');
$back_img = input('get.back_img', '');
$valid_date = input('get.valid_date', 0);
$qr_code_path = './public/upload/qr_code/';
if (!file_exists($qr_code_path)) {mkdir($qr_code_path);
}
/* 生成二维码 */
$qr_code_file = $qr_code_path.time().rand(1, 10000).'.png';
\QRcode::png($url, $qr_code_file, QR_ECLEVEL_M);
/* 二维码叠加水印 */
$QR = Image::open($qr_code_file);
$QR_width = $QR->width();
$QR_height = $QR->height();
/* 增加背景图 */
if ($back_img && file_exists($back_img)) {$back =Image::open($back_img);
$back->thumb($QR_width, $QR_height, \think\Image::THUMB_CENTER)
->water($qr_code_file, \think\Image::WATER_NORTHWEST, 60);//->save($qr_code_file);
$QR = $back;
}
/* 增加头像 */
if ($head_pic) {
// 如果是网络头像
if (strpos($head_pic, 'http') === 0) {
// 下载头像
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL, $head_pic);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$file_content = curl_exec($ch);
curl_close($ch);
// 保留头像
if ($file_content) {$head_pic_path = $qr_code_path.time().rand(1, 10000).'.png';
file_put_contents($head_pic_path, $file_content);
$head_pic = $head_pic_path;
}
}
// 如果是本地头像
if (file_exists($head_pic)) {$logo = Image::open($head_pic);
$logo_width = $logo->height();
$logo_height = $logo->width();
$logo_qr_width = $QR_width / 5;
$scale = $logo_width / $logo_qr_width;
$logo_qr_height = $logo_height / $scale;
$logo_file = $qr_code_path.time().rand(1, 10000);
$logo->thumb($logo_qr_width, $logo_qr_height)->save($logo_file, null, 100);
$QR = $QR->thumb($QR_width, $QR_height)->water($logo_file, \think\Image::WATER_CENTER);
unlink($logo_file);
}
if ($head_pic_path) {unlink($head_pic_path);
}
}
if ($valid_date && strpos($url, 'weixin.qq.com') !== false) {$QR = $QR->text('无效工夫'.$valid_date, "./vendor/topthink/think-captcha/assets/zhttfs/1.ttf", 7, '#00000000', Image::WATER_SOUTH);
}
$QR->save($qr_code_file, null, 100);
$qrHandle = imagecreatefromstring(file_get_contents($qr_code_file));
unlink($qr_code_file); // 删除二维码文件
header("Content-type: image/png");
imagepng($qrHandle);
imagedestroy($qrHandle);
exit;
}
正文完