用 Composer构建自己的 PHP 框架之基础准备


Posted in PHP onOctober 30, 2014

『Composer 一统天下的时代已经到来!』

——白岩松

“一个时代结束了,另一个时代开始了。”

Framework Interoperability Group(框架可互用性小组),简称 FIG,成立于 2009 年。FIG 最初由几位知名 PHP 框架开发者发起,在吸纳了许多优秀的大脑和强健的体魄后,提出了PSR-0 到 PSR-4 五套 PHP 非官方规范:

1. PSR-0 (Autoloading Standard) 自动加载标准

2. PSR-1 (Basic Coding Standard) 基础编码标准

3. PSR-2 (Coding Style Guide) 编码风格向导

4. PSR-3 (Logger Interface) 日志接口

5. PSR-4 (Improved Autoloading)自动加载优化标准

之后,在此标准之上,Composer横空出世!Composer 利用 PSR-0 和 PSR-4 以及 PHP5.3 的命名空间构造了一个繁荣的 PHP 生态系统。Composer 类似著名的 npm 和 RubyGems,给海量 PHP 包提供了一个异常方便的协作通道,Composer Hub 地址:https://packagist.org/。Composer 中文网站:http://www.phpcomposer.com/。

目前 PHP 界风头正劲的 Laravel 和 Symfony 均直接基于 Composer,大家耳熟能详著名框架 CI 和 Yii 的正开发版本CodeIgniter 3 和 Yii 2 也都基于 Composer(更新:北京时间2014年10月13日 Yii 2 已经发布)。Composer 就是 PHP 框架的未来,有了它,让 CI 的路由和 Laravel 的 Eloquent ORM 协作就会变的非常简单。

PHP 语言本身就带有强大的网络功能、文件管理功能和丰富的系统 API,Composer 也只是一段 PHP 脚本而已。可以使用

php composer.phar update

直接调用。

在合适的地方新建一个文件夹,命名为 MFFC(My First Framework based on Composer),在文件夹下新建文件 composer.json:

{ "require": { }}

命令行切换到 MFFC 目录下,运行:

composer update

稍等片刻,会出现如下文件及文件夹:

用 Composer构建自己的 PHP 框架之基础准备

如果以上内容成功出现,恭喜你,Composer 初始化成功!

PHP 相关文章推荐
一个php导出oracle库的php代码
Apr 20 PHP
php将时间差转换为字符串提示
Sep 07 PHP
php中base_convert()进制数字转换函数实例
Nov 20 PHP
php读取csv数据保存到数组的方法
Jan 03 PHP
检测codeigniter脚本消耗内存情况的方法
Mar 21 PHP
PHP IDE phpstorm 常用快捷键
May 18 PHP
PHP中单例模式与工厂模式详解
Feb 17 PHP
thinkphp中U方法按路由规则生成url的方法
Mar 12 PHP
php微信开发之图片回复功能
Jun 14 PHP
php微信分享到朋友圈、QQ、朋友、微博
Feb 18 PHP
php转换上传word文件为PDF的方法【基于COM组件】
Jun 10 PHP
PHP使用 Pear 进行安装和卸载包的方法详解
Jul 08 PHP
thinkphp视图模型查询提示ERR: 1146:Table 'db.pr_order_view' doesn't exist的解决方法
Oct 30 #PHP
仿dedecms下拉分页样式修改的thinkphp分页类实例
Oct 30 #PHP
thinkphp中html:list标签传递多个参数实例
Oct 30 #PHP
如何让CI框架支持service层
Oct 29 #PHP
使用array_map简单搞定PHP删除文件、删除目录
Oct 29 #PHP
PHPUnit安装及使用示例
Oct 29 #PHP
laravel安装和配置教程
Oct 29 #PHP
You might like
thinkphp文件处理类Dir.class.php的用法分析
2014/12/08 PHP
从阿里妈妈发现的几个不错的表单验证函数
2007/09/21 Javascript
Domino中运用jQuery读取视图内容的方法
2009/10/21 Javascript
JavaScript游戏之优化篇
2010/11/08 Javascript
Javascript面向对象扩展库代码分享
2012/03/27 Javascript
在子窗口中关闭父窗口的一句代码
2013/10/21 Javascript
jQuery中事件对象e的事件冒泡用法示例介绍
2014/04/25 Javascript
简单易用的倒计时js代码
2014/08/04 Javascript
Jquery实现鼠标移动放大图片功能实例
2015/03/25 Javascript
jQuery给多个不同元素添加class样式的方法
2015/03/26 Javascript
IE8下jQuery改变png图片透明度时出现的黑边
2015/08/30 Javascript
JavaScript面向对象程序设计教程
2016/03/29 Javascript
基于jQuery下拉选择框插件支持单选多选功能代码
2016/06/07 Javascript
使用PBFunc在Powerbuilder中支付宝当面付款功能
2016/10/01 Javascript
JavaScript表单验证开发
2016/11/23 Javascript
利用require.js与angular搭建spa应用的方法实例
2017/07/19 Javascript
BootStrap Fileinput插件和Bootstrap table表格插件相结合实现文件上传、预览、提交的导入Excel数据操作步骤
2017/08/07 Javascript
Angular中点击li标签实现更改颜色的核心代码
2017/12/08 Javascript
nodejs 最新版安装npm 的使用详解
2018/01/18 NodeJs
js中火星坐标、百度坐标、WGS84坐标转换实现方法示例
2020/03/02 Javascript
ES5和ES6中类的区别总结
2020/12/21 Javascript
详解MySQL数据类型int(M)中M的含义
2016/11/20 Python
对Pycharm创建py文件时自定义头部模板的方法详解
2019/02/12 Python
Python openpyxl读取单元格字体颜色过程解析
2019/09/03 Python
Python 日志logging模块用法简单示例
2019/10/18 Python
Python3爬虫关于识别点触点选验证码的实例讲解
2020/07/30 Python
python实现不同数据库间数据同步功能
2021/02/25 Python
Ibatis中如何提高SQL Map的性能
2013/05/11 面试题
售后服务承诺书模板
2014/05/21 职场文书
六一儿童节活动总结
2014/08/27 职场文书
2015年大学社团工作总结
2015/04/09 职场文书
公司员工违纪检讨书
2015/05/05 职场文书
2015秋学期开学寄语
2015/05/28 职场文书
信息简报范文
2015/07/21 职场文书
新年祝酒词大全
2015/08/11 职场文书
2016医师资格考试考生诚信考试承诺书
2016/03/25 职场文书