我必须在 MySQL 数据库上使用 PHP 发出一些数据库请求。
问题:什么是正确完成工作的最佳(最简单)框架 CRUD(创建读取更新删除)?
我还必须填充数据库,有什么好工具可以做到这一点。我知道的唯一一个是 SqlMyAdmin,它看起来不太好。一个在线工具会很棒。
您的经验很有价值:告诉我您使用什么以及为什么?
我看过 CodeIgniter,看起来不错,你觉得……矫枉过正?
对于很多操作(尤其是 CRUD,一旦你编写了模式文件就可以开箱即用),ORM 框架原则真的很棒。
如果您想更深入地访问数据库,您可以查看 PHP FRamework symfony,它提供了一个管理生成器(甚至还有一个关于该生成器的截屏视频)。(并且有很好的文档,比如jobeet 教程)(顺便说一句,symfony 使用 Doctrine 作为 ORM ^^)
但是,如果您需要一些简单的东西,也许这有点矫枉过正(并且需要太大的学习曲线)......
要将数据加载到 MySQL,那么LOAD DATA INFILE怎么样,它(引用自文档)“以非常高的速度将文本文件中的行读取到表中”。
我推荐GroceryCRUD因为良好的工程和文档
=> 你得到一个带有创建/编辑/删除按钮的分页 JqueryUI 表。
create/edit 打开一个基于 MySQL 表模式的表单页面。例如,一个布尔值、一个 varchar 和一个文本被转换成一个带有活动/非活动单选按钮、一个文本字段和一个所见即所得 html 编辑器的表单。
注意:GroceryCRUD 是基于 CodeIgniter 构建的,因此您将在管理目录中拥有一份副本。您不必使用它来构建您的主站点。
安全公告:任何库都可能存在未发现的安全漏洞,因此建议通过使用 BaseAuth 保护您的 GroceryCRUD 副本并仅允许 SSL 访问来最大程度地减少暴露。
我会第二次 Pascal 对 Symfony 的评论(我会升级但没有足够的信用:-() - Symfony 有一个很棒的管理生成器,一旦你了解了 app->module->actions 的概念,它就很简单了,文档太棒了,即使有时在 Google 上搜索它更容易;-)
如果做不到这一点,现在的CakePHP比以前好很多,而且你可以用最少的麻烦开始工作,特别是他们的脚手架,这将帮助你建立一个基本的 CRUD 风格的设置。他们的文档也非常棒,而且很容易阅读 :-)
如果 Doctrine、CAKE、CodeIgniter 等解决方案对于您正在尝试做的事情来说似乎有点过头了,我建议您使用我构建的单文件 PHP 脚本,它可以让您在 MySQL 中对分层数据进行 CRUD:
http://coding.pressbin.com/109/PHP-One-file-CRUD-front-end-for-hierarchical-MySQL-data/
为什么不尝试从头开始编写代码,因为 CRUD 是编程的常见任务。有很多很好的教程:
1>PHP PDO + Bootstrap Twitter:http ://www.lizardgrid.com/blog/php-crud-tutorial-part-1/
2>JQuery + PHP: http: //www.codeofaninja.com/2013/05/crud-with-php-jquery.html
我目前正在测试JqGrid(一个 Jquery 表库)。
我试过Grocery CRUD:看起来不错,但它的 Datatables 主题(具有列过滤能力)不适用于服务器端处理,这就是我放弃它的原因。
我会说这完全取决于你需要做什么。
你知道phpMyAdmin,对吧?您可以使用该工具从多种格式导入。
或者您想开发一个具有简单 CRUD 操作的应用程序?那么像Symfony或Zend Framework这样的框架将是正确的选择。
我开发了这个脚本,它从 MySQL 数据库中对一组存储过程进行逆向工程,其中列出了表的所有行、基于主键的单行、基于主键的更新/插入和基于主键的删除。它假定您已经使用每个表的主键设置创建了表,并为您生成 MySQL 存储过程。我发现这比用 PHP 开发的类似类型的解决方案更有效。
像http://www.notorm.com/这样的东西可能比 Symfony 更合适。虽然我喜欢 Symfony 并且使用它效果很好,但它并不简单。
同样,对于 Codeignitor,我认为任何完整的堆栈框架(Laravel、Zend、Wii 等)都不适合“简单”的范围。
我发现一个相当直接且轻松的 crud 系统是https://github.com/usmanato360/crud360,它非常易于设置,并且有许多高级功能。它与生成模型类等的传统 crud 系统不同。它只是一个动态处理所有事情的类。