在CakePHP中上传文件的最佳实践

时间:2010-06-30 10:08:37

标签: php forms cakephp file-upload cakephp-1.3

任何人都可以建议我编写用于在CakePHP中上传文件的代码的最佳方法吗?

  • 我需要上传文件并将其名称保存在表格中。
  • 如果记录保存失败,则不应上传文件。
  • 如果上传失败,则应该回滚该记录。
  • 代码应该可以重复使用
  • 我需要在afterSave回拨
  • 中上传文件

3 个答案:

答案 0 :(得分:16)

修改(2015年):请参阅Awesome CakePHP列表了解当前文件插件(2.x分支here


编辑(2013):这个答案现在有点过时,所以我只留下所有上述插件的列表:


原始答案(自2010年起):

  

您可以考虑使用上次CakeFest中谈到的Media plugin。它相当全面,包含诸如创建文件变体(即图像或视频的缩略图),用于输出不同类型文件的帮助程序以及帮助更快地创建多文件上载表单的元素等功能;我可以从the slides收集,从一开始就非常注重安全。我在生产中使用它并发现它运行良好,而且它似乎比我已经看到的其他选项更多active development,如果这是任何事情(例如。MeioUpload behaviorUploader pluginFileUpload plugin以及关于该主题的各种面包/博客帖子。

答案 1 :(得分:3)

请查看File fields中的Cookbook部分。

答案 2 :(得分:1)

我发现这个https://github.com/srs81/CakePHP-AjaxMultiUpload插件对我的情况有帮助。