我的php常用轮子composer配置

composer linux 安装
cd /usr/local/bin
curl -s http://getcomposer.org/installer | php
chmod a+x composer.phar
alias composer='/usr/local/bin/composer.phar'


如果想要中国镜像
composer config -g repo.packagist composer https://packagist.phpcomposer.com


如果想要原来的标准镜像,速度慢也是妥妥滴。
composer config -g --unset repos.packagist



检查常见的问题
composer diagnose




更新到最新版本
composer self-update




清除缓存
composer clear-cache





最后,确保 ~/.composer/vendor/bin 目录加入到了你的 PATH 中。

composer windows 安装
cmd下,速度很慢,要耐心
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php composer-setup.php  --filename=composer.phar --install-dir=XXX
cd XXX
echo @php "%~dp0composer.phar" %*>composer.bat

xxx是你的系统path下的某个目录。

如果想要中国镜像,执行和上面一样的话。

我是win7,最后把C:\Users\Administrator\AppData\Roaming\Composer\vendor\bin加入系统path


注意:有两个地方需加入path,一个是composer这个命令本身,一个是composer库vendo下的bin目录,都应该在path内。
注意2:201707,今天composer的版本1.4.2

composer 常用命令
composer show 列出所有已安装的包
composer update 根据composer.json的最新文件内容更新库
composer install 根据composer.json的内容安装库,一般就装在当前目录下
composer require 库名 偷懒的做法,让机器装完自动改composer.json
composer remove 库名 ,删除库
composer self-update 把composer命令本身替换成最新版本,就是更新自身。
composer config --list 列出当前目录下的composer库的各种情况,很有用的!
composer create-project XXX ,重要,建立框架用。


composer安装软件包的正确方法
http://blog.csdn.net/xianglingchuan/article/details/51930960
composer require "foo/bar:1.0.0"



composer版本号识别
5.4.27    // 最简单
^3.1      // 类似波浪线开头,>=3.1 并且小于4
>=5.5.0    // 最低是这个版本
>=4.8 < 6.0 //介于之间
1.0.*        //该写法就是^1.0
~1.2         //相当于 >=1.2,<2.0
~1.2.3       //相当于 >=1.2.3,<1.3。
>=1.0,<1.1|>=1.2 //你可以定义多个范围,用逗号隔开,这将被视为一个逻辑AND处理。一个管道符号|将作为逻辑OR处理。AND 的优先级高于 OR。



composer常用轮子 - require

今天时间是:2017-06
1.
图像处理(图像1) "imagine/imagine"
官网: http://imagine.readthedocs.io/en/latest/
本人文档: http://xieye.iteye.com/blog/2379475

2.
数据库db类(1) doctrine,注意下面还有一个laravel自带的那个Eloquent,也不错。
官网: http://docs.doctrine-project.org/projects/doctrine-dbal/en/latest/
本人文档: http://xieye.iteye.com/blog/2379707

3.
php模板 twig v2.4.3需要php7,如没有,则v1.34.3
官网: https://twig.sensiolabs.org/doc/2.x/
本人文档: http://xieye.iteye.com/blog/2379462

4.
日志类 monolog
本人文档: http://xieye.iteye.com/blog/2379473

5.
消息队列处理 php-resque
本人文档:
http://xieye.iteye.com/blog/2379444
http://xieye.iteye.com/blog/2379583
http://xieye.iteye.com/blog/2382692

6.
html美化兼防xss ezyang/htmlpurifier
官网: http://htmlpurifier.org/
本人文档: http://xieye.iteye.com/blog/2381402

7.
发邮件 phpmailer/phpmailer
得自己有帐号。v6 得要php5.5,如没有,则v 5.2.23
本人文档: http://xieye.iteye.com/blog/2381434

8.
excel处理, maatwebsite/excel  要php5.5
官网: http://www.maatwebsite.nl/laravel-excel/docs

20170626
今日补充,常用的登录用图形验证码
9.
"gregwar/captcha":"1.1.2"
本人文档: http://xieye.iteye.com/blog/2381403

10.
http客户端:rmccue/requests
官网: http://requests.ryanmccue.info/
本人文档: http://xieye.iteye.com/blog/2382145

11.
重要,路由框架slim
有了这个,项目才能称之为框架。
网上查找了很多,这个是很棒的一个,特点,体积小,只有核心功能,想要多可以有中间件等等。这是一个类似yii,laravel的框架,但是只有很精简的功能,加载当然也超快。另外实现了PSR-7

官网: https://www.slimframework.com/docs/
本人文档:
http://xieye.iteye.com/blog/2382474
http://xieye.iteye.com/blog/2382835

12.
数据库db类(2)Eloquent
laravel自带的illuminate/database
一定有很多同学喜欢,可以在这个和上面的doctrine中任选一个!
切记,新版本需要php5.6
注意:为了使用record那个类库,还需同时加载illuminate/events
官网: https://laravel.com/docs/5.4/database
本人文档: http://xieye.iteye.com/blog/2382907

13.
数据库迁移工具
robmorgan/phinx 0.8.1
官方文档 http://docs.phinx.org/en/latest/
中文文档 https://tsy12321.gitbooks.io/phinx-doc/
中文文档翻译者 http://www.jianshu.com/users/21716b19302d/latest_articles
本人文档 http://xieye.iteye.com/blog/2383038

14.
php的db类库Eloquent单独使用系列(2) - 分页
Eloquent使用的illuminate/pagination
官方文档 https://laravel.com/docs/5.4/pagination
本人文档 http://xieye.iteye.com/blog/2383390

15.
数据库分页组件(2)
多个类库使用的pagerfanta/pagerfanta 1.0.5,
放在这里,是因为其对doctrine的db类库支持良好。
官方文档 https://github.com/whiteoctober/Pagerfanta
本人文档 http://xieye.iteye.com/blog/2383455

16.
数据库db类(3) catfan/medoo
和上面的doctrine和Eloquent,medoo就非常小巧了,适合小型快速开发的项目。
我亲测很好使。
他有一系列方法保证sql不被注入,极少数的特别复杂的语句可以允许你写原生sql,有方法防止注入。
此外,它还有一个超有用的log函数,可以打印执行过的sql语句!
总之很好。
官方文档: https://medoo.in/doc
本人文档: http://xieye.iteye.com/blog/2383564

17.
medoo数据库分页组件(3)
多个类库使用的pagerfanta/pagerfanta 1.0.5,它比较通用。
官方文档 https://github.com/whiteoctober/Pagerfanta
本人文档 http://xieye.iteye.com/blog/2383586

18.
图像处理(图像 2)
intervention/image
和imagine/imagine一样,php通用图像处理库。使用的人也很多。
使用特别简单方便,代码量少,是其特点。
官方文档 http://image.intervention.io/
本人文档 http://xieye.iteye.com/blog/2383659

19.
mysql管理工具phpmyadmin
事实上,xampp和mamp等php集成套件都自带。
不过就算没有,利用composer可以轻易搞定。
官方文档 https://docs.phpmyadmin.net/en/latest/
本人文档 http://xieye.iteye.com/blog/2383824

20
zend framework 1 的db类以及它自带的分页功能(分页组件4)
zf1是个虽好用,但过时的框架。
为了把分页大全补完整,这里也加进来。
官方文档: https://framework.zend.com/manual/1.12/en/zend.paginator.introduction.html
https://framework.zend.com/manual/1.12/en/zend.db.select.html
本人文档: http://xieye.iteye.com/blog/2383959

21
pimple 轻量级依赖注入容器
官方文档 https://pimple.symfony.com/
本人文档 http://xieye.iteye.com/blog/2384631

22
Grafika(图像类库3)
官方文档 https://kosinix.github.io/grafika/
星空幻颖的文档 https://segmentfault.com/a/1190000007411281

{
    "require": {
        "imagine/imagine":"0.7.1",
        "doctrine/dbal":"2.5.12",
        "twig/twig":"2.4.3",
        "monolog/monolog":"1.22.1",
        "chrisboulton/php-resque":"1.2.x",
        "ezyang/htmlpurifier":"4.9.3",
        "phpmailer/phpmailer":"6.0.0rc5",
        "maatwebsite/excel":"2.1.17",
        "gregwar/captcha":"1.1.2",
        "rmccue/requests":"1.7.0",
        "slim/slim":"3.8.1",
        "illuminate/database":"5.4.27",
        "illuminate/events":"5.4.27",
        "robmorgan/phinx":"0.8.1",
        "illuminate/pagination":"5.4.27",
        "pagerfanta/pagerfanta":"1.0.5",
        "catfan/medoo":"1.4.5",
        "intervention/image":"2.4.0",
        "zf1/zend-db":"1.12.11",  
        "zf1/zend-paginator":"1.12.11" ,
        "pimple/pimple":"3.1.0",
        "kosinix/grafika":"2.0.8" 
    }
}


(说明:实际上,slim+doctrine(或illuminate_database)+ twig加起来就是一个简单的mvc框架)

composer常用轮子开发篇 - require-dev
{
    "require-dev": {
        "phpunit/phpunit":"6.2.3",  // php 7 以上用
        "phpunit/phpunit":"5.7.21",  // php 5.6 以上用
        "phpunit/phpunit":"4.8.36",  // php 5.3.3 以上用
        "codeception/codeception":"2.3.4", //php 5.4 以上用
        "phpspec/phpspec":"3.4.0",     // php 5.6 以上用
        "phpspec/phpspec":"2.5.7",     // php 5.3.3 以上用
        "behat/behat":"3.3.1",         // php 5.3.3 以上
    
    }
}



附:php生态: https://github.com/ziadoz/awesome-php
部分翻译: http://blog.csdn.net/u010832551/article/details/51120251

猜你喜欢

转载自xieye.iteye.com/blog/2379772