登录
/
注册
首页
论坛
其它
首页
科技
业界
安全
程序
广播
Follow
关于
每日签到
每天签到奖励2圆-6圆
发帖说明
VIP申请
登录
/
注册
账号
自动登录
找回密码
密码
登录
立即注册
搜索
搜索
关闭
CSDN热搜
程序园
精品问答
技术交流
资源下载
本版
帖子
用户
软件
问答
教程
代码
写记录
写博客
VIP申请
VIP网盘
网盘
联系我们
每日签到
道具
勋章
任务
设置
我的收藏
退出
腾讯QQ
微信登录
返回列表
首页
›
资源区
›
代码
›
thinkphp5遇到必须使用Db::raw方法而无法使用json格式传 ...
thinkphp5遇到必须使用Db::raw方法而无法使用json格式传递Db对象
[ 复制链接 ]
赐度虻
2025-6-4 13:21:36
今天使用Thinkphp5做异步任务传递where参数时遇到一个问题:
有一段如下代码:
$where['jst.supplier'] = ['exp', Db::raw('>0 or jst.is_supplier=1')];
复制代码
在使用swoole做异步任务时需要把where参数传递给异步任务处理,因为无法传递数组和对象只能传递字符串,所以需要把where数组转换成字符串;
以前一直是使用json_encode函数转换json字符串,结果在今天使用发现报错:
进一步追查发现,swoole_client传递的参数就有问题
原始参数是这样的:
结果使用json_encode生成之后是这样的:
网上找了很多办法都不太好,
最后尝试使用 serialize 函数对数组进行序列化,然后swoole服务端使用 unserialize 转换回数组,结果发现Db对象完全保留未发生丢失。
serialize方法虽然不json格式可读性高、占用字符少;但还是有可取之处。
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
使用
Db
thinkphp5
遇到
必须
相关帖子
使用Java实现一个DNS服务
CMake构建学习笔记24-使用通用脚本构建PROJ和GEOS
Rust中使用RocksDB索引进行高效范围查询的实践指南
GitPod 使用 SpiceDB 实现权限管理
Redis 介绍与 Node.js 使用教程
使用Yolo12算法进行区域内实时目标计数
SpringBoot使用AOP优雅的实现系统操作日志的持久化!
磁盘性能测试工具FIO-使用教程
Vim在Windows的安装与基本使用
使用unsloth实现LoRA微调
vip免费申请,1年只需15美金$
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
照妖镜
相关推荐
安全
使用Java实现一个DNS服务
0
142
秦晓曼
2025-09-03
业界
CMake构建学习笔记24-使用通用脚本构建PROJ和GEOS
0
700
左丘平莹
2025-09-03
安全
Rust中使用RocksDB索引进行高效范围查询的实践指南
0
703
聚怪闩
2025-09-03
业界
GitPod 使用 SpiceDB 实现权限管理
0
978
事值
2025-09-04
业界
Redis 介绍与 Node.js 使用教程
0
204
嗣伐
2025-09-05
业界
使用Yolo12算法进行区域内实时目标计数
0
114
孟清妍
2025-09-05
业界
SpringBoot使用AOP优雅的实现系统操作日志的持久化!
0
118
马璞玉
2025-09-07
业界
磁盘性能测试工具FIO-使用教程
0
359
吕清莹
2025-09-07
安全
Vim在Windows的安装与基本使用
0
385
福清婉
2025-09-07
安全
使用unsloth实现LoRA微调
0
776
心麾浪
2025-09-07
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
回复
本版积分规则
回帖并转播
回帖后跳转到最后一页
签约作者
程序园优秀签约作者
发帖
赐度虻
2025-6-4 13:21:36
关注
0
粉丝关注
16
主题发布
板块介绍填写区域,请于后台编辑
财富榜{圆}
敖可
9984
杭环
9988
凶契帽
9988
4
氛疵
9988
5
黎瑞芝
9988
6
猷咎
9986
7
里豳朝
9986
8
肿圬后
9986
9
蝓俟佐
9984
10
虽裘侪
9984
查看更多