1.组件是什么?
组件是打包的代码。是一系列相关的类,接口和性状。
2.查找组件
https://packagist.org
中文网:
http://packagist.p2hp.com/
3.使用php组件
composer require vendor/package
vendor/package 是厂商名/包名
如 :composer require phpunit/phpunit
4.自动加载php组件
<?php
require 'vendor/autoload.php';
5.创建自己的php组件
1.厂商名和包名
每个php组件的名称都是由唯一的厂商名和包名组成,建议小写。
如:modernphp/scanner (来源于Modern php)
2.命名空间
组件的命名空间是为了在php代码中使用组件,可以与组件的厂商名包名不一致。
3.文件系统的结构
src/ 包含组件的源码
test/包含组件的测试
composer.json composer配置文件
README.md
LICENSE 组件的软件许可证
4.使用
composer init
来生成composer.json
生成
name 组件的厂商名和包名
description 描述
keywords 关键字
license 证书 MIT (MIT Public License)
authors
require 组件自身需要的组件
suggest 建议安装的组件
autoload 如何自动加载组件
{
"name": "zhangjun/urlscantest",
"description": "packages test",
"require": {
"php": ">=5.40",
"guzzlehttp/guzzle": "~5.0",
"phpunit/phpunit": "~4.3"
},
"license": "MIT",
"authors": [
{
"name": "zhangjun",
"email": "zhangjun@exampl.com"
}
],
"minimum-stability": "dev",
"suggest": {
"league/csv": "~6.0"
},
"autoload": {
"psr-4": {
"Zhangjun\\UrlScanner\\": "src/"
}
}
}
6.提交到packagist
先提交到github