卡洛斯·巴博萨(Carlos Barbosa)的量子2
Quantum 是为超快速 Web 开发而构建的 php 框架。
它是为想要快速完成工作的 php 程序员而构建的。
它集成了 PHP-Activerecord 和 Smarty,使其功能强大。
它具有用于创建模型、控制器和视图的命令行工具:
对于构建控制器:
cd quantum/script ./teleport -c name=blog //Teleports a blog controller ./teleport -m name=post //teleports a post model ./teleport -v controller=blog action=index // teleport an index view
控制器的目的是仅公开公共函数,这样你就可以摆脱:
一个完整的博客控制器,只需3分钟:
class BlogController extends Quantum { function __construct() { $this->setTemplate('cms); } function index() { $posts = Post::all(); $this->set('posts', $posts); } function new() { $this->createPostHook(); } function post() { if isset($this->getData['id']) { $post = Post::find_by_id($this->getData['id']); if (empty($post)) { redirect_to('/blog'); } $this->set('post', $post); } } private function createPostHook() { if (isset($this->postData['title])) { $post = new Post(); $post->title = $this->postData['title]; $post->save(); $this->set('success' 1); } } }
以你的视图为例:
(app/views/blog/index.tpl)
{section name=posts loop=posts} {$posts[posts]->title} {$posts[posts]->title} {/section}
尽管大多数文档都没有记录,但是它已经在许多 Web 应用程序中工作了很多年,尤其是非常适合 Facebook 应用程序(apps)。
全功能:
- PHP-Activerecord
- Smarty
- Teleport 命令行工具
- QLoader(javascript 加载器)
- Quantum Javascript 框架,一个用于构建大型 js 应用程序的框架,非常好,它自动将大量 js 编译为一个文件
- 功能齐全的模板系统($this->setTemplate('something'));只需将 header.tpl 和 footer.tpl 放到 templates 文件夹内的目录中即可。
- 多站点(从单个代码库进行暂存、开发和生产,无需 hack,只需设置您的 config/environment.php 即可通过检测当前域来工作,以便您可以在 yousite.dev yoursitestaging.com 和 yoursiteproduction.com 上工作。然后 git push 到某个地方)
- 完整的 MVC 架构。
安装:
- 将项目克隆到目录中。
- 将您的网站指向 webroot 文件夹。
- 在 config/environment.php 中配置数据库
开发:
- Controllers 位于:app/controllers
- Models 位于:app/models
- Views 位于:app/views
- Filters 位于:app/filters
- Templates 位于:app/templates
- Helpers 位于:app/helpers
将浏览器指向 /tests,以便您可以看到控制器在启动后将继承哪些方法。
index.php 是一个元加载器,繁重的加载是在 Quantum.php 内部完成的,可以根据您的需要定制此文件以启动 Quantum,作为示例。
它具有一些用于快速构建 Web api 的函数,例如 Quantum\ApiException::resourceNotFound() 和 Quantum\ApiOutput::adaptableOutput($array);
我保证有一天,如果你们表现出兴趣,将会改善它并记录下来……。
干杯,享受超快的速度,现在不影响 Web 开发。
有任何建议,请通过电子邮件发送至carlosbarbosamexico@gmail.com。
(The first version translated by vz on 2020.08.01)