Compoer的应用
添加阿里云composer镜像
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
删除composer镜像
composer config -g --unset repos.packagist
composer.json配置
{
"name":"RuoShui PHP",
"description":"PHP Framework",
"type":"Framework",
"keywords":[
"PHP","PHP Framework"
],
"require":{
"PHP":">= 5.3.0",
"filp/whoops":"*",//错误提示
"symfony/var-dumper":"*",//打印调试
"catfan/medoo":"*",//轻量级的PHP数据库框架
"twig/twig":"*"//模板引擎
},
//国内镜像
"repositories": {
"packagist": {
"type": "composer",
"url": "https://packagist.phpcomposer.com"
}
},
//配置全局导入包路径
"config": {
"vendor-dir": "E:/www/kuangjia/vendor"
}
}
composer总结
composer常用命令
composer list 列出所有可用的命令
composer init 初始化composer.json文件(就不劳我们自己费力创建啦),会要求输入一些信息来描述我们当前的项目,还会要求输入依赖包
composer install 读取composer.json内容,解析依赖关系,安装依赖包到vendor目录下
composer update 更新最新的依赖关系到compsoer.lock文件,解析最新的依赖关系并且写入composer.lock文件
composer search packagename 搜索包,packagename替换为你想查找的包名称
composer require packagename 添加对packagename的依赖,packagename可修改为你想要的包名称
composer show packagename
composer self-update 更新 composer.phar文件自身
==============================================================================
update报错
[Composer\Exception\NoSslException]
The openssl extension is required for SSL/TLS protection but is not available. If you can not e
nable the openssl extension, you can disable this error, at your own risk, by setting the 'disa
ble-tls' option to true.
执行下面的语句
composer config -g -- disable-tls true
==============================================================================
config (root-only)
查看配置文件
composer config -l -g 或者 composer config --list
下面的这一组选项,仅用于项目。支持以下选项:
process-timeout: 默认为 300。处理进程结束时间,例如:git 克隆的时间。Composer 将放弃超时的任务。如果你的网络缓慢或者正在使用一个巨大的包,你可能要将这个值设置的更高一些。
use-include-path: 默认为 false。如果为 true,Composer autoloader 还将在 PHP include path 中继续查找类文件。
preferred-install: 默认为 auto。它的值可以是 source、dist 或 auto。这个选项允许你设置 Composer 的默认安装方法。
github-protocols: 默认为 ["git", "https", "ssh"]。从 github.com 克隆时使用的协议优先级清单,因此默认情况下将优先使用 git 协议进行克隆。你可以重新排列它们的次序,例如,如果你的网络有代理服务器或 git 协议的效率很低,你就可以提升 https 协议的优先级。
github-oauth: 一个域名和 oauth keys 的列表。 例如:使用 {"github.com": "oauthtoken"} 作为此选项的值, 将使用 oauthtoken 来访问 github 上的私人仓库,并绕过 low IP-based rate 的 API 限制。 关联知识 关于如何获取 GitHub 的 OAuth token。
vendor-dir: 默认为 vendor。通过设置你可以安装依赖到不同的目录。
修改例如:composer config vendor-dir E:/www/kuangjia (注意项目里面配置的优先级更高)bin-dir: 默认为 vendor/bin。如果一个项目包含二进制文件,它们将被连接到这个目录。
cache-dir: unix 下默认为 $home/cache,Windows 下默认为 C:\Users\<user>\AppData\Local\Composer。用于存储 composer 所有的缓存文件。相关信息请查看 COMPOSER_HOME。
cache-files-dir: 默认为 $cache-dir/files。存储包 zip 存档的目录。
cache-repo-dir: 默认为 $cache-dir/repo。存储 composer 类型的 VCS(svn、github、bitbucket) repos 目录。
cache-vcs-dir: 默认为 $cache-dir/vcs。此目录用于存储 VCS 克隆的 git/hg 类型的元数据,并加快安装速度。
cache-files-ttl: 默认为 15552000(6个月)。默认情况下 Composer 缓存的所有数据都将在闲置6个月后被删除,这个选项允许你来调整这个时间,你可以将其设置为0以禁用缓存。
cache-files-maxsize: 默认为 300MiB。Composer 缓存的最大容量,超出后将优先清除旧的缓存数据,直到缓存量低于这个数值。
prepend-autoloader: 默认为 true。如果设置为 false,composer autoloader 将不会附加到现有的自动加载机制中。这有时候用来解决与其它自动加载机制产生的冲突。
autoloader-suffix: 默认为 null。Composer autoloader 的后缀,当设置为空时将会产生一个随机的字符串。
optimize-autoloader Defaults to false. Always optimize when dumping the autoloader.
github-domains: 默认为 ["github.com"]。一个 github mode 下的域名列表。这是用于GitHub的企业设置。
notify-on-install: 默认为 true。Composer 允许资源仓库定义一个用于通知的 URL,以便有人从其上安装资源包时能够得到一个反馈通知。此选项允许你禁用该行为。
discard-changes: 默认为 false,它的值可以是 true、false 或 stash。这个选项允许你设置在非交互模式下,当处理失败的更新时采用的处理方式。true 表示永远放弃更改。"stash" 表示继续尝试。Use this for CI servers or deploy scripts if you tend to have modified vendors.
实例:{
"config": {
"bin-dir": "bin"
}
}
windows下安装composer方法
composer是一个新崛起的PHP的依赖管理工具。官方安装方法见: https://getcomposer.org/doc/00-intro.md#installation-windows 。这里提供不修改PATH环境变量的手动安装方法。
此处假定:
(1)php安装目录为C:/php5.4
(2)php安装目录已经加入PATH环境变量(这样就可以在命令行直接输入“php”而不是“C:/php5.4/php.exe”。PATH环境变量修改方法见:http://blog.chinaunix.net/uid-25810793-id-3257898.html )
(3)composer安装目录为r:/php_phar
———————————–
1、前期工作:php在命令行下所使用的php.ini文件,需要打开php_openssl.dll扩展
可以通过以下命令行,确定php在命令行下所使用的php.ini文件路径:
php –ini
然后通过以下命令,确定是否打开了php_openssl.dll扩展:
php -i | findstr /I /N “openssl”
如果输出字符串有openssl的信息,表示openssl打开成功;否则,请更改php.ini文件,打开php_openssl.dll扩展。
2、通过浏览器下载如下文件到r:/php_phar,文件名为“composer_installer.phar”:
https://getcomposer.org/installer
3、打开cmd命令行,切换到composer安装目录:
cd r:/php_phar
也可以通过我的电脑到达r:/php_phar,然后按住shift后右键,选择“在此处打开命令窗口”
4、输入命令安装:
php composer_installer.phar
5、此时运行“php r:/php_phar/composer.phar -V”,如果显示版本号,表示安装成功。以后可以在其他目录,通过“php r:/php_phar/composer.phar 其他命令行参数”执行composer的其他功能了。
问:我看到官方手册、或者其它教程中,就可以直接在windows命令行下输入“composer xxx”执行啊,怎么做到的?
答:需要增加bat文件和修改PATH环境变量。
1、增加bat文件。
在composer安装目录下增加composer.bat,文件内容为:
@echo off php %~dp0composer.phar %*
这样,就可以通过bat直接运行composer了:
r:/php_phar/composer -V
2、将r:/php_phar加入PATH环境变量,然后重启命令行,就可以达到你的效果了:
问:我不想修改PATH环境变量,又想达到简便输入“composer xxx”(甚至php xxx等等)执行,怎么做?
答:可参阅stackoverflow中给出的两个答案,通过“DOSKEY+注册表”、或“DOSKEY + cmd.exe /K参数”完成这种效果。具体见: http://stackoverflow.com/questions/20530996/aliases-in-windows-command-prompt 。此处仅介绍DOSKEY + cmd.exe /K参数。
(1)保存如下文字到C:/initcmdenv.cmd:
@echo off
:: Temporary system path(为当前命令行增加额外的PATH,可随意增加不影响全局系统) set PATH=%PATH%;
:: Commands(增加新的快捷命令,必须为DOSKEY 快捷名称=完整命令) DOSKEY composer=php r:/php_phar/composer.phar $*
::Show something(显示初始化的内容,可以删掉)
echo ========DOSKEY==========
DOSKEY /macros
echo ========END==========
(2)新建一个快捷方式。目标位置填入:
%windir%/system32/cmd.exe /K C:/initcmdenv.cmd
(3)愉快地执行composer吧!
linux安装composer
https://pkg.phpcomposer.com/#how-to-install-composer
Compoer的应用的更多相关文章
- Compoer介绍
Compoer介绍 Composer 是 PHP 的一个依赖管理工具.它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们. 安装Composer Composer.phar 是 Compos ...
- compoer 全局和单个项目切换源 composer update killed
演示地址: https://blog.csdn.net/hpugym/article/details/72588393 composer update killed https://cloud.ten ...
- Centos下安装compoer, 解决vendor目录问题
laravel部署时使用git拉代码的话,vendor目录部署是没有提交到git上的,如果没有该目录,服务会报错如下 Warning: require(/opt/soft/pro/bootstrap/ ...
- php安装compoer install
1.先确定php运行版本为7.1以上 2.在phpstorm中 或者在项目根目录按住shift+有单击点击“在此处打开命令窗口”运行composer install 3出现这个证明安装成功 . 会遇到 ...
- linux 配置compoer
配置默认php 删除 rm -f /usr/bin/php 改到php7.3版本的composer /bin/php /usr/bin/php 多版本支持 配置php7专用composer70 cd ...
- Composer入门
摘要 本文介绍Composer的入门知识,包括require和autoload部分. Java有Maven, Node.js有npm, ROR有gem, 这些语言的程序员在开心地使用包管理工具加速开发 ...
- php在laravel中使用自定义的Common类
众所周知,laravel是一款高度集成的开发框架,框架内置非常多的操作方法,从而保证了我们的开发效率.但是在日常中为了满足我们的个性化业务,也需要自己去编写工具类,在laravel中我们完成编写后还需 ...
- ThinkPHP 5 中的 composer.json
本篇并不是揭 ThinkPHP 5 的问题. 只是通过 composer.json 来学习 compoer.json 元旦那天, ThinkPHP 5.1 正式发布,值得庆祝. 之后的第二天有人反馈 ...
- laravel 二维码生成器包 QrCode 的使用
在laravel中使用 QrCode 生成二维码 https://laravelacademy.org/post/2605.html 我在本机的windows下composer require 没有成 ...
随机推荐
- QDialog对话框
QDialog对话框,用来实现那些只是暂时存在的用户界面,是独立的窗口,但通常也有父窗口对话框有模态和非模态两种,,非模态对话框的行为和使用方法都类似于普通的窗口,模态对话框则有所不同,当模态对话框显 ...
- 利用 python requests完成接口文件上传
最近在准备一个公开课,主题就是利用不同的语言和不同的工具去实现文件的上传和下载. 在利用Jmeter去实现功能的时候,以及利用loadrunner去写脚本的时候,都很顺利,没有任何问题,当我尝试用Py ...
- 2018-2019-2 网络对抗技术 20165227 Exp5 MSF基础应用
2018-2019-2 网络对抗技术 20165227 Exp5 MSF基础应用 Exploit选取 主动攻击:ms17_010_eternalblue(成功) 浏览器攻击: ms10_042_hel ...
- 20165230田坤烨《网络对抗》Exp1 PC平台逆向破解
实践目标 本次实践的对象是一个名为pwn1的linux可执行文件. 该程序正常执行流程是:main调用foo函数,foo函数会简单回显任何用户输入的字符串. 该程序同时包含另一个代码片段,getShe ...
- Mask RCNN 学习笔记
下面会介绍基于ResNet50的Mask RCNN网络,其中会涉及到RPN.FPN.ROIAlign以及分类.回归使用的损失函数等 介绍时所采用的MaskRCNN源码(python版本)来源于GitH ...
- Linux定时任务调度
⒈概述 任务调度:是指系统在某个时间执行的特定的命令或程序 分类:1)系统任务:有些重要的工作必须周而复始的执行,例如病毒扫描等 2)用户任务:个别用户可能希望定时执行某些程序,例如mysql定时备份 ...
- 解决 ionic 中的 CORS(跨域)
译者注:本人翻译功力有限,所以文中难免有翻译不准确的地方,凑合看吧,牛逼的话你看英文版的去,完事儿欢迎回来指正交流(^_^) 如果你通过 ionic serve 或者 ionic run 命令使用或 ...
- Jquery中AJAX参数详细介绍
Jquery中AJAX参数详细列表: 参数名 类型 描述 url String (默认: 当前页地址) 发送请求的地址. type String (默认: "GET") 请求方式 ...
- Django 查询集简述
通过模型中的管理器构造一个查询集(QuerySet),来从数据库中获取对象.查询集表示从数据库中取出来的对象的集合.它可以含有零个.一个或者多个过滤器.过滤器基于所给的参数限制查询的结果. 从SQL ...
- 嵌入式系统C编程之堆栈回溯
前言 在嵌入式系统C语言开发调试过程中,常会遇到各类异常情况.一般可按需添加打印信息,以便观察程序执行流或变量值是否异常.然而,打印操作会占用CPU时间,而且代码中添加过多打印信息时会显得很凌乱.此外 ...