php - 发布 php qr 颜色代码值不适用于表单
问题描述
我正在尝试使用phpqrcode生成彩色二维码。
如果我直接将值赋予前景色和背景色,则效果很好。当我试图发布它不起作用的值时。
我的代码:
$textname = $_POST["text"];
$filename = $_POST["filename"];
$level = $_POST["level"];
$size = $_POST["size"];
$margin = $_POST["margin"];
$backcolor = $_POST["backcolor"];
$forecolor = $_POST["forecolor"];
QRcode::png($textname , $filename, $level, $size, $margin, false, $backcolor, $forecolor);
工作得很好:
$backcolor = 0xFFFFFF;
$forecolor = 0x00000;
不工作:
$backcolor = $_POST["backcolor"];
$forecolor = $_POST["forecolor"];
解决方案
您需要将颜色代码转换为十六进制值。替换您的代码如下
$backcolor = hexdec(str_replace('#','0x',$_POST["backcolor"]);
$forecolor = hexdec(str_replace('#','0x',$_POST["forecolor"]);
推荐阅读
- webpack - webpack-dev-server cli --open localhost 在不同的端口
- python - 在 python 中为bloomberg API 安装blpapi 错误
- android - 在线性布局中将一个文本视图与另一个文本视图对齐
- azure - Azure keyvault CLI - 如何在值中有空格
- jquery - 在动态创建的元素上运行 Odometer.js
- typescript - 如何在打字稿中使用通用返回值注释函数
- javascript - 异步函数不等待等待
- php - Silverstripe 管理列排序在 price.nice 上不起作用
- odoo - odoo 错误:安装脚本指定了绝对路径
- elasticsearch - travis 上的 Elasticsearch docker 失败,文件夹访问被拒绝