cd /usr/local/bin curl -s http://getcomposer.org/installer | php chmod a+x composer.phar alias composer='/usr/local/bin/composer.phar'
说明:201806 ,现在版本1.6.5
如果想要中国镜像,目前好像packagist.laravel-china.org 不可用
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/ 或者, composer config -g repo.packagist composer https://packagist.laravel-china.org 或者, composer config -g repo.packagist composer https://packagist.phpcomposer.com
几个镜像都写下来
composer config -g repo.packagist composer https://packagist.laravel-china.org
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
composer config -g repo.packagist composer https://packagist.jp/
composer config -g repo.packagist composer https://packagist.com.br/
如果想要原来的标准镜像,速度慢也是妥妥滴。
composer config -g --unset repos.packagist
检查常见的问题
composer diagnose
更新到最新版本
composer self-update
清除缓存
composer clear-cache
laravel可能用到,只更新自动加载类,autoload那个文件,但完全不安装
composer dump-autoload
最后,确保 ~/.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。
使用 ^ 约束符锁定大版本 那 ^ 的作用不一样的是:^ 锁定不允许变的第一位,其实学过正则的同学都知道 ^ 表示起始,^a 表示以 a 开头的全部。 所以, ^1.2 表示任意大于等于 1.2 的 1.x.x 版本,比如 1.2.0、1.2.1、1.3.0、1.9.99999 等。只要前面的 1 并且大于 ^ 后面指定的 1.2 都满足条件。
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
docker安装pecl报错
https://blog.csdn.net/shilei_zhang/article/details/80002957
========================================
关于unzip错误。
centos
yum install zip unzip
ubuntu:
apt install unzip