Laravel - 将 PHP 资源传递给 Storage::put

2024-01-06

Laravel 文档 (https://laravel.com/docs/5.2/filesystem#storing-files https://laravel.com/docs/5.2/filesystem#storing-files)说明这一点:

存储文件

put 方法可用于在磁盘上存储文件。您还可以将 PHP 资源传递给 put 方法,该方法将使用 Flysystem 的底层流支持。处理大文件时,强烈建议使用流:

Storage::put('file.jpg', $contents);

Storage::put('file.jpg', $resource);

我想要保存一个大于我的 php 内存限制(512MB)的文件,所以当我这样做时,我收到内存错误:

Local.php 第 128 行中的 FatalErrorException:允许的内存大小 536870912 字节已耗尽(尝试分配 377028088 字节)。

如何使用文档中所示的流媒体功能?如何从文件路径转到“PHP 资源”?


PHP 不允许您上传该大小的文件。文档中指出的资源是这样的PHP资源 http://php.net/manual/en/resource.php

下面是一个使用外部图像 URL 创建图像的简单示例干涉 http://image.intervention.io/。 Intervention库使用GD库,该库位于PHP资源列表下。

$image = Image::make('Your Extenal URL')->stream();
Storage::put('image_name.jpg', $image->getContents());   

对于您的情况,这里是上传文件的示例代码。

$file = Request::file('file_field');
Storage::put($file->getClientOriginalName(), File::get($file));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Laravel - 将 PHP 资源传递给 Storage::put 的相关文章

随机推荐

  • C# OPENXML XLSX 自定义列宽

    C 新手来了 我需要创建一个小型控制台应用程序来将 CSV 文件转换为 XLSX 文件 我的所有样式和数据都正常工作 但我想在某些列上设置不同的 与默认的 宽度 经过一天的搜索和阅读后 我仍然不知道如何让它工作 举个例子 我想 将 A 列和
  • EmguCV DLL 未找到异常 - 无法找到 cvextern?

    首先 这不是 SO 和网络上询问的另一个盲目的 Emgu CV DLL 问题 我已经研究了这个问题 但找不到解决方案 我已将我在一个项目中使用的 EmguCV 版本更新到最新版本 3 4 3 一切在开发机器和 Windows 10 机器上运
  • Xcode 7:忽略存储库中的 .xcscmblueprint?

    我注意到 Xcode 7 创建了一个新的 xcscmblueprint文件在xcshareddata文件夹 它总是自动生成吗 应该将该文件添加到存储库的忽略列表中 还是应该将其签入存储库 Xcode 6 有 xccheckout文件 我总是
  • Azure 流量管理器和 https 端点

    我有一个在 Azure 上运行的网站 我添加了一个自定义域和 SSL 以启用对其的 https 访问 一切皆好 几天前 Azure 在托管我的网站的数据中心 西欧 出现了网络问题 当然我的网站在那段时间受到了影响 所以我现在决定将我的网站置
  • 打印 Visual Studio 用于编译文件的整个命令

    当我们在 Visual Studio 中编译 C C 项目时 输出窗口只打印正在编译的文件的名称 我们如何打印整个命令 即 编译该文件时使用的所有包含目录 标志等 我知道当我们右键单击文件名时有一个选项 特性 命令行 它显示了构建时要使用的
  • SimpleXML 获取子元素之间的元素内容

    我正在使用 SimpleXML 在 PHP 中解析 XML 并且有一个如下所示的 XML
  • 转换/展平对象数组

    我有以下对象数组 需要将其转换为一个对象 是否有捷径可寻 我在页面上有下划线 也许它能有所帮助 John name John age 59 Dave name Dave age 62 to John name John age 59 Dav
  • 在 ROS - Python 中使用来自多个主题的数据

    我能够显示来自两个主题的数据 但无法在 ROS 中实时使用和计算这两个主题的数据 用 Python 代码编写 您有想法存储这些数据并实时计算吗 谢谢 usr bin env python import rospy import string
  • 在考虑唯一推销员姓名计数的同时,查找随着日期增加的保险销售金额的累积总和

    我有下表 SaleDate SaleName SaleAmount 2021 03 01 Jack 40 2021 03 02 Mark 60 2021 03 03 Sam 30 2021 03 03 Mark 70 2021 03 02
  • SQLite查询小于或大于检查

    我想用这个 return mDb query DATABASE TABLE new String KEY ROWID KEY LEVEL KEY LEVEL gt 3 AND KEY LEVEL lt 5 null null null nu
  • 错误:“无法找到 rake”,但 Rake 已安装

    为什么我会收到此 Rake 错误 rake version Volumes Data sampablokuper rvm rubies ruby 1 9 3 p194 lib ruby site ruby 1 9 1 rubygems de
  • Android 屏幕尺寸 HDPI、LDPI、MDPI [重复]

    这个问题在这里已经有答案了 我有一个需要适合所有屏幕尺寸的背景 我有三个文件夹 hdpi ldpi and mdpi对于可绘制对象 但在模拟器中没有任何关于分辨率的参考hdpi是什么mdpi and ldpi are 你应该阅读支持多屏 h
  • 对枚举的引用不明确 Objective-c

    我在另一个文件中定义了一个 NS ENUM typedef NS ENUM NSUInteger LinkPlatformType LinkPlatformTypeEmail 1 LinkPlatformTypeFacebook LinkP
  • 如何使用返回类型 ActionResult 对操作进行单元测试?

    我的问题与这个非常相似 当返回类型为 ActionResult 时 如何对操作进行单元测试 https stackoverflow com q 18865257 419956 问题是我的问题混合在generic ActionResult
  • 如何使用jquery选择表中的一行?

    我在我的应用程序中创建了一个表格 我想在单击复选框时选择 更改背景颜色 整行 就像 gmail 所做的那样 当我们单击 gmail 中的复选框时 整行变为黄色 table tbody tr td td tr tbody table
  • 对“gluOrtho2D”的未定义引用[重复]

    这个问题在这里已经有答案了 http programanddesign com cpp qt opengl code example http programanddesign com cpp qt opengl code example
  • 正则表达式如何匹配 2 个字段

    如何捕获引号内的文件名以及后面的数字作为命名捕获 正则表达式 C Files fileone txt 5969784 file2 txt 45345333 在字符串中的每次出现中 能够捕获 fileone txt 和后面的整数 循环循环每对
  • 为什么 gevent.spawn 在调用 Greenlet.join 之前不执行参数化函数?

    我想使用发出异步 HTTP POST 请求gevent 我不关心响应 我只想尽快执行请求 但是 每当我尝试使用gevent spawn 请求永远不会执行 我知道这一点是因为调用 ready or successful 上的方法Greenle
  • 模态窗口和对话窗口有什么区别?

    这个问题准确地描述了我想知道的内容 模态窗口和对话有什么区别 当模式窗口变成对话时 反之亦然 我该如何实现这两个目标 非常感谢朝正确方向的推动 模态窗口是在应用程序之上运行的窗口 因此在关闭模态窗口之前您无法对应用程序执行任何操作 jQue
  • Laravel - 将 PHP 资源传递给 Storage::put

    Laravel 文档 https laravel com docs 5 2 filesystem storing files https laravel com docs 5 2 filesystem storing files 说明这一点