Phalcon框架介绍
PHP 刘宇帅 4年前 阅读量: 1123
前言
专门写这一篇文章来介绍 Phalcon 首先是因为本站的系统就是基于 Phalcon搭建的,第二就是先后两次接触 Phacon 体会差别比较大,第三就是就我现在觉得 Phalcon 其实是挺好的一框架怎么就没火起来呢,很郁闷,所以写这篇文章表达下自己的看法。
Phalcon框架整体介绍
Phalcon 是一个基于 MVC 的 PHP 框架,因为其最终的交付形式是 C 语言编译成的 PHP 扩展,所以其比大多数 PHP 开发的框架速度都要快。Phalcon 提供了对主要关系型数据库、NoSql、缓存、日志、模板引擎、表单构建器、国际语言支持等各类功能的支持。想使用 PHP 构建高性能 REST API 以及完整的 Web 应用程序 Phalcon 绝对是理想之选。
Phalcon的发展
Phacon 框架在2014年的时候,在国外框架排行中一度排到第二名,而2015年则直接跌出排行榜前10,而且现在国内使用 Phalcon 的公司也比较少。为什么像 Phalcon 这种运行快、封装好的框架就是不能像 Laravel 那样大红大紫呢,这里我根据我先后两次接触 Phalcon 讲下个人的看法。
第一次接触 Phalcon 是在我毕业进入第一家公司的时候,当时主要的工作是前端,偶尔会写一点 PHP 的代码,所以当时对 Phalcon 的感觉就是模模糊糊,总体感觉 Phalcon 还是挺复杂的,入门门槛很高,而且后面开始接触了Laravel,发现Laravel很容易上手,所以对 Phalcon 的感觉更加糟糕了。
第二次接触 Phalcon 就是在写支持我的这个博客的系统的时候,当时系统设计初衷是为了做一个 PHP 社区网站(后面停滞了),想着既然是做社区就要让社区本身体现 PHP 的强大,而 Phalcon 作为 PHP 框架里速度和易用性的担当就本选中了。这一次我才对 Phalcon 有了深入了解,才明白 Phalcon 比不过 Laravel 的原因,第一 上手慢, Phalcon 它本身设计应该说是对 WEB 开发需要的各个组件做了封装,并不像Laravel那样为开发者提供了一个 WEB 开发的 模版型框架 ,开发者使用Laravel只需要在特定的文件里配置路由、写 controller、写model即可,而如果你想使用 Phalcon 就必须先实现一套 模版 然后才可以轻松愉快的开发,比如 Phalcon 默认封装的 Log 模块是很难直接使用的,你必须做一个全局封装才能像 Laravel 里一样轻松愉快(也可能是习惯了 Laravel 的写法才有这种感觉)。第二 国内几乎没有 Phalcon 的社区,即使是国外的社区活跃度也并不高,遇到问题的话想要靠 google 来解决还是比较难的。第三 源码不是 PHP 写的,理解框架整体流程有难度,其实第这一点并不算阻碍,当前 Phalcon 的实现是基于 Zephir(下面有介绍)的,而作为 PHPer 想要读懂其源码几乎是没有什么压力。
Zephir
Phalcon 2.0 之前都是用 C 实现的,2.0 开始使用专门为 Phalcon 设计的语言 Zephir 实现。Zephir 语法简单,整体上和 PHP 语法保持一致,所以对于 PHP 开发人员来说学习代价很低,可以说是2小时就能精通 Zephir。另外如果大家需要做一些 PHP 的扩展开发不妨选择 Zephir ,学习及开发成本绝对比 C 语言低很多。
总结体会
Phalcon 框架本身实现上很完善再加上其基于 Zephir 的实现更加亲民,所以我个人整体感觉 Phalcon 还是挺好的,如果加上 Laravel 这种 艺术性
的设计绝对起飞!