dqjjw04440 2018-07-25 23:48 采纳率: 0%
浏览 398

求助:MYSQL LONGTEXT字段在检索时被截断

我有一个设置为 utf8 general ci 的 LONGTEXT 字段,它包含一个很大的 JSON 值,当我查看 phpmyadmin 中的值时,我可以看到 JSON 文本的开头和结尾(它也是有效的)。

但是当我把 JSON 列传输到屏幕上时,我只能得到一半的文本,在调用 JSON decode 返回 NULL 之前。

下面是代码的一个片段:

$stmtproducts = $db->prepare('SELECT * FROM products WHERE id = ?');  
$stmtproducts->execute([$id]); 

$product = $stmtproducts->fetch(PDO::FETCH_ASSOC);

var_dump($product['json_txt']);

我已经将max_LEXED_Packet更改为512 m,但文本仍会被截断。

  • 写回答

1条回答

  • lshen01 2023-03-16 09:48
    关注

    参考GPT和自己的思路:

    这个问题可能是因为某些PHP配置的限制导致的。首先,您可以检查您的PHP配置中的以下设置:

    1. post_max_size - 如果超过了这个值,请求将被截断
    2. memory_limit - 如果超过了这个设置,PHP将尝试从中断点开始重新启动

    除了这些设置,您还可以检查PHP错误日志以查看是否有任何有用的信息。

    如果您的PHP设置没有问题,则您可能需要更改MySQL的配置,以便支持更大的数据包。您可以将以下设置添加到my.cnf文件中:

    max_allowed_packet = 512M

    这应该可以解决您当前遇到的问题。如果您对此仍有疑问,请告诉我。

    评论

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题