我正在尝试从字符串创建流,在2行我得到的错误看起来像这样
允许的内存大小为134217728字节耗尽(尝试分配24379392字节)
$stream = fopen('php://memory','r+');
fwrite($stream, $response);
rewind($stream);
我正在尝试从其他主机获取大文件的内容,并在本地
中设置这是我的逻辑。
$url = "https://webdav.abc.ru/abc/20/Storage/Files/c/c51256c25c0cb2610d5018df204b0135.mp4";
$method = "GET";
$headers = [];$body = null;
$response = $this->send(new HTTP\Request($method, $url, $headers, $body));
$stream = fopen('php://memory','r+');
fwrite($stream, $response);
rewind($stream);
$response = $this->parseCurlResult($stream, $this->curlHandle);
答案 0 :(得分:0)
这是由PHP设置引起的。如果您有权访问php.ini
,则应该很容易修复。
调整memory_limit
中的内存限制(php.ini
)设置。
php.ini中的示例:
memory_limit=4096M
或
在您需要更高限制的文件中:
ini_set('memory_limit', '4096M');
答案 1 :(得分:-1)
您可以使用ini_set("memory_limit", your-memory-limit-here)
e.g
ini_set("memory_limit","512M"); // your can also set a number of bytes parameter but it is easier to set a string indicating MB limit