卡洛斯·巴博萨(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)