stream_set chunk_size():块大小不能大于 laravel 24215454

Posted

技术标签:

【中文标题】stream_set chunk_size():块大小不能大于 laravel 24215454【英文标题】:stream_set chunk_size(): The chunk size cannot be larger than laravel 24215454 【发布时间】:2021-11-12 15:40:14 【问题描述】:

我面临“stream_set_chunk_size():块大小不能大于 laravel 24215454” 当我遇到错误时,在 Laravel 项目中出现此错误。不知道为什么会这样。

我正在使用 Laravel 8 和 XAMPP 3.3.0

【问题讨论】:

长镜头,但我注意到在monolog/StreamHandler.php 第 56 行代码使用ini_get('memory_limit') 检查内存限制的 ini 设置,如果设置它使用最大 10% 的允许内存用于块大小。检查您的内存限制设置? 【参考方案1】:

问题来自php.ini 文件,因为包monolog/monologStramHandler 在其指令中使用它,而且在某些情况下定义它也很重要。

键入php --ini 以识别哪些php.ini 由您的服务器上的PHP 加载并识别您的自定义文件。

例如,我服务器上的最后一个是我的自定义php.ini,它会覆盖其他任何值:

尝试像这样更改memory_limit 值:

然后重新加载您的页面/执行任何 CLI 来尝试一下。

【讨论】:

【参考方案2】:
stream_set_chunk_size(resource $resourcedata, $maxsize(PHP_INT_MAX))

in php PHP_INT_MAX (integer, not int64) limit is int(2.147.483.647 byte/character).

也就是函数不支持超过这个值的数据栈,所以要么把数据栈减少,要么分析这2gb的数据是从哪里来的,从哪里来的,分成不止一块, 应该将这些部分发送到函数 然后你必须合并。

【讨论】:

以上是关于stream_set chunk_size():块大小不能大于 laravel 24215454的主要内容,如果未能解决你的问题,请参考以下文章

DjangoDjango 文件下载最佳实践

Django实现文件上传下载

如何将数组拆分为块,但让它一个接一个地填充每个数组

python 文件下载进度条(装逼利器)

memcache 配置

线上memcached 状态分析