使用 cakephp 3 上传文件并将其存储在 blob 中

2024-02-28

我知道在数据库中存储文件有点脏,但我需要上传文件并将其存储到数据库 BLOB 中,并且我没有找到任何有关它的文档,也没有找到任何线索,所以有关的任何帮助我们将不胜感激。

提前致谢, 大卫


您不需要做任何特别的事情,只需将要存储在适当的实体属性(分别是数组键)中的数据设置为字符串或流即可。

BLOB列将自动与\Cake\Database\Type\BinaryType数据库类型 https://github.com/cakephp/cakephp/blob/3.0.12/src/Database/Type/BinaryType.php,其中正在处理存储/读取二进制数据所需的所有内容。

这是一个抽象示例,显示了可能的用例

$data = [
    'file_a' => file_get_contents('path/to/file.ext'),
    'file_b' => fopen('path/to/file.ext', 'r'),
    'file_c' => 'foo bar baz'
];
$entity = $Table->newEntity($data);
$Table->save($entity);

读取实体将始终将数据作为流保存,因此您可以将它们与文件系统 http://php.net/manual/en/ref.filesystem.php and Stream http://php.net/manual/en/ref.stream.php函数,例如

$handle = $Table->get(1)->file_a;
while (!feof($handle)) {
    echo fread($handle, 8192);
}
echo stream_get_contents($Table->get(1)->file_a);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 cakephp 3 上传文件并将其存储在 blob 中 的相关文章

  • 在 JavaScript 中压缩 Blob

    我需要使用 ajax 向服务器发送一个 blob 但它最终可能会变得有点大 我想减少上传时间 我已经尝试过 jszip 但这只是在 zip 中给了我一个空文件 我也尝试过 btoa 但事实证明编码值最终只是 object Blob 而不是实
  • Cakephp:将 AppController 抽象到另一个层次,可能吗?

    我想知道是否可以在 AppController 和我的应用程序的其他控制器之间添加另一个抽象控制器 这样我的控制器 例如UsersController 扩展了 SecureController SecureController 扩展了 Ap
  • Spring Boot 文件上传错误请求 400

    你好 我正在使用 Spring Boot 和 AngularJs 编写一个 Web 应用程序 需要一个简单的文件上传 但目前无法正常工作 我已经读到 当 mvc 依赖项存在时 Spring Boot 应该自动配置分段上传本身 从 https
  • 如何在 File 类中提供相对路径来上传任何文件? [复制]

    这个问题在这里已经有答案了 我正在上传一个文件 我想为其提供相对路径 因为该程序应该在 Linux 和 Windows 环境中运行 这就是我用来上传的 realPath getServletContext getRealPath files
  • 如何在 PrimeNG 的 FileUpload 组件中中止文件上传?

    一 总结 基于PrimeNG中选择的文件文件上传组件 https www primefaces org primeng fileupload 我想中止特定文件名模式的文件上传到后端服务器 角度 6 0 7 PrimeNG 6 0 2 2 第
  • 将文件存储在文件系统上或在 SQL Server 中存储为 varbinary(MAX)

    我知道 对于将文件作为 blob 存储在数据库中是否是不好的做法存在很多争议 但我只是想了解这对于我的情况是否有意义 我正在创建一个 ASP NET 应用程序 在一家大公司内部使用 用户需要能够将文件附加到系统中的 作业 这些文件通常是 P
  • 使用 JavaScript 将图像上传到 Web 服务

    我需要从 javascript 将图像上传到网络服务 我必须发送一个 json 字符串和一个文件 图像 在java中我们有MultipartEntity 我在java中有以下代码 HttpPost post new HttpPost aWe
  • 将变量从 PHP 传递到 JavaScript 的有效方法[重复]

    这个问题在这里已经有答案了 有时我必须将一些变量从 PHP 传递到 JS 脚本 现在我是这样做的 var js variable 但这非常丑陋 我无法在 js 文件中隐藏我的 JS 脚本 因为它必须由 PHP 解析 处理这个问题的最佳解决方
  • PHP/PDO/MySQL:插入 MEDIUMBLOB 会存储错误数据

    我有一个简单的 PHP Web 应用程序 它通过文件上传接受图标图像并将它们存储在 MEDIUMBLOB 列中 在我的机器 Windows 和两台 Linux 服务器上 这工作得很好 在第三台 Linux 服务器上 插入的图像已损坏 在 S
  • 如何安装 Miles J 的 cakephp 论坛插件?

    我很确定这是一个蛋糕 1 3 问题 该插件与 2 0 不兼容 我正在尝试为论坛安装 cakephp 的 Miles J 插件 可以在这里找到 http milesj me code cakephp forum http milesj me
  • Cakephp - CSRF 令牌不匹配

    我在 Cakephp 3 6 中有一个项目 其中 MessageController 中的 3 个操作由 Ajax 调用 但是 我有一个问题 当我向其中一个操作发送请求时 XHR 会向我返回以下内容 message CSRF token m
  • 登录后如何在其他页面控制器中找到我当前的用户ID?

    我计划在我的事件索引页面上设置权限 该权限只允许某些用户查看我添加事件时设置的权限 用户点击进入我的事件后 事件控制器将首先检查用户 ID 并检查事件数据库 该数据库控制用户可以查看其日历中的哪个事件 当用户创建事件并分享给其他用户时添加权
  • 多文件上传字段的重力形式预览缩略图

    我们使用重力形式将多个图像附加到图库自定义字段并创建新帖子 我们不知道如何在 HTML5 导入字段下显示图像缩略图 而不仅仅是在提交表单之前显示文件名 之前的答案仅涵盖单个文件上传 图片上传重力形式预览 https stackoverflo
  • Nervgh Angular 文件上传 - 如何限制文件格式为 jpeg 和 png?

    我正在升级使用 nv file select 指令的应用程序 我不确定如何限制支持上传的文件格式 您想要按照中所述使用过滤器文档 https github com nervgh angular file upload wiki Module
  • Oracle Blob 在 PHP 页面中作为 img src

    我有一个网站当前使用文件服务器上的图像 这些图像显示在页面上 用户可以根据需要拖放每个图像 这是使用 jQuery 完成的 图像包含在列表中 每张图片都非常标准 img src network path image png height 8
  • Godaddy 托管上的 CakePHP 控制台

    我一直在努力让我的 CakePHP 网站在 Godaddy 网格托管 帐户上运行 我的蛋糕应用程序设置是从帐户的子目录托管的 并且可以通过子域访问 我必须调整我的 htaccess 文件才能使其正常工作 现在我需要让 CakePHP 控制台
  • ssl.SSLEOFError: EOF 发生违反协议 (_ssl.c:1129)

    我正在尝试使用 GOOGLE Drive Api 从电脑上传多个文件到云端硬盘 from pydrive auth import GoogleAuth from pydrive drive import GoogleDrive import
  • HTML:选择多个文件但未显示文件名?

    我使用 多个 标签让用户选择多个文件进行上传
  • AWS S3 上传的图像已损坏

    我正在 AWS ec2 ubuntu 机器上工作 我的代码在 cakephp 中 当我尝试将任何图像上传到 AWS S3 时 它都会损坏 虽然它在核心 php 代码中运行良好 这是我的控制器代码 if this gt User gt sav
  • 如何使用play框架上传多个文件?

    我在用play framework 2 1 2 使用java我正在创建视图来上传多个文件 我的代码在这里 form action routes upload up enctype gt multipart form data

随机推荐

  • laravel 5.4 多对多关系

    我与 pjt role admin 有多对多表 admins pjt roles 的关系 但是 不工作 我有 2 个型号 类角色 protected table pjt roles public function Admin return
  • 设计 Azure 服务总线主题 - 您应该倾向于使用更多主题还是更多过滤器?

    我正处于设计高级结构的早期阶段 我们的两个企业应用程序将如何广播到 Azure 服务总线中的主题 我是这项技术的新手用户 在初步阅读文档后 我很想使用一个简单的解决方案 为我们想要广播的每种不同的事件类型使用单独的主题 我喜欢这个解决方案
  • Angular 6,构建无法在 Firebase 托管上加载图像

    将 Angular 应用程序部署到 Firebase 托管后 我无法从资产文件夹加载图像 构建 产品 当在本地主机上运行时 图像显示 所有其他东西都加载正确 这是我的包 json cli 6 2 0 beta 2 firebase 工具 4
  • xdebug 无法在 php 视图中进入下一行

    我正在使用 Eclipse for PHP Luna Service Release 1 4 4 1 并尝试安装 xdebug 进行调试 我跟随这个博客 http docs joomla org Edit PHP INI File for
  • Go 和 Gin:传递数据库上下文的结构?

    我刚刚开始尝试 Go 并且希望用它重新实现一个用 Node 编写的 API 服务器 我在尝试使用依赖注入作为 gin 中间件传递数据库上下文时遇到了障碍 到目前为止我已经将其设置为 main go package main import f
  • fable 中的预测功能是否提供一步预测?

    如上所述here https otexts com fpp2 forecasting on training and test sets html 在测试集中进行一步预测是避免随着预测范围的增加而不可避免地增加方差的一种方法 该部分提到的是
  • 为什么 DbContext.Entry(IEnumerable).State 在我的代码中产生 ArguementNullException?

    In my MedicalProductController 我正在努力让我的Edit能够在一页上编辑多个对象的操作 为此 我计划我的HTTPPOST编辑操作方法接收IEnumerable
  • 使用新创建的网络流时,网络流“无法访问已处置的对象”

    我有几种不同的方法来连接到远程主机 发送消息 获取回复和使用信息 这一直工作得很好 直到我在连接类的同一个实例中使用两种方法 在我收到错误的示例中 我运行以下方法 public string sendRequestAccountID str
  • Python:3 维空间中的 DBSCAN

    我一直在寻找 3 维点的 DBSCAN 实现 但运气不佳 有谁知道我的图书馆可以处理这个问题或者有这方面的经验吗 我假设 DBSCAN 算法可以处理 3 个维度 通过将 e 值设置为半径度量并通过欧几里德分离测量点之间的距离 如果有人尝试过
  • 在 postgresql 中连接两个 int 值

    我有 7 个整数值 分别为 3 1 3 4 4 5 4 位 我必须将它们连接到一个整数 即 24 位数字 我试着这样做 create or replace function gen id int int int int int int in
  • Paypal REST API:无法将登录页面设置为计费

    我正在使用 Paypal REST API 和 PHP SDK 为慈善机构构建捐赠功能 我一直在尝试将登陆页面类型设置为 结算 但似乎没有任何变化 这是我用于定义网络体验配置文件的代码 根据http paypal github io Pay
  • 如果代码覆盖率报告百分比较小,构建应该失败

    我编写了一个 build xml 用于通过 phing 生成报告 我在 build xml 中添加了以下命令来生成代码覆盖率报告
  • 简单:如何用 php 替换“all Between”? [复制]

    这个问题在这里已经有答案了 string
  • SF:从 UTM 到纬度/经度

    我有一组 UTM 度量点 我想使用 sf 环境将其转换为纬度和经度小数点 我的数据集如下所示 df lt data frame longitude c 4585434 4588904 4586694 latitude c 430060 8
  • 如何从 github 拉取我的项目?

    我在github上有一个项目 我之前一直在做 但是 我清理了我的计算机 我想知道我应该在我的用户名下调用哪个 git 命令来再次签出我的项目 以便我可以将最新更改推送到我的帐户下的 github Git clone 是您正在寻找的命令 gi
  • Swift:仅返回类型不同的方法重载

    我不断看到 Swift 类中定义了两种仅返回类型不同的方法 我不习惯使用允许这样做的语言 Java C 等 因此我寻找描述其在 Swift 中如何工作的文档 我在任何地方都没有发现任何东西 我本以为 Swift 书中会有完整的章节来介绍它
  • WPF - 当 ItemsSource 更改时重置 ListBox 滚动位置

    我当前有一个 ListBox 其 ItemsSource 集合绑定到我的视图模型上的 IEnumerable 类型的属性 当该 preoprty 的引用更改时 列表框会按预期更新 但是我有一个问题 如果我有大量项目集合并滚动到列表框的底部
  • 禁用 Laravel 中的速率限制器?

    有没有办法禁用 Laravel 中每个 单个路由的速率限制 我正在尝试测试接收大量请求的端点 但 Laravel 会随机开始响应 status 429 responseText Too Many Attempts 数百个请求使得测试变得非常
  • KeyVault 为何比标准存储更安全?

    我试图了解 Azure Key Vault 或同样的 AWS KMS 提供的安全优势 我了解密钥管理的好处 即能够轻松轮换 更改 审核密钥访问 但让我有点困惑的是它如何更安全 据我了解 如果我开发一个 Web 应用程序并想要保护我的连接字符
  • 使用 cakephp 3 上传文件并将其存储在 blob 中

    我知道在数据库中存储文件有点脏 但我需要上传文件并将其存储到数据库 BLOB 中 并且我没有找到任何有关它的文档 也没有找到任何线索 所以有关的任何帮助我们将不胜感激 提前致谢 大卫 您不需要做任何特别的事情 只需将要存储在适当的实体属性