如何使 如何安装composerr 跑得更快

资讯中心 NEWS CENTER
当前位置:&&&&&&
为什么现在很多框架都用Composer来安装
Composer是PHP界新出现的依赖管理工具,初识Composer的时候,有一种相见恨晚的感觉。PHP也可以用pear和pecl进行依赖管理,前者是管理PHP库,后者管理PHP扩展。在某些情况下也很方便,我尤其喜欢用pecl安装PHP扩展。Composer的优点在于仅需要提供一个composer.json文件,申明需要用到的三方库,一个简单的命令就能将其依赖全部装好。也方便项目的部署和发布,因为只需要提供一个composer.json就行了。现在的缺点是缺少对一些静态资源(如js,css)的直接支持,这也许与其定位有关吧。当然,Composer 不仅仅是依赖管理工具,还提供了自动加载的支持。这就涉及到php-fig组织的PSR-0规范了。有兴趣可看其官方网站。学习难度是有限的,但其带来方便性却是无限的!
&&上一篇:下一篇:&&Packagist / Composer 中国全量镜像
Packagist / Composer 中国全量镜像
Packagist 镜像
请各位使用本镜像的同学注意:
本镜像已经依照 composer 官方的数据源安全策略完全升级并支持 https 协议!请各位同学
按照下面所示的两个方法将
还没安装 Composer 吗?请往下看 。
用法:有两种方式启用本镜像服务:
系统全局配置: 即将配置信息添加到 Composer 的全局配置文件 config.json 中。见
单个项目配置: 将配置信息添加到某个项目的 composer.json 文件中。见
例1:修改 composer 的全局配置文件(推荐方式)
打开命令行窗口(windows用户)或控制台(Linux、Mac 用户)并执行如下命令:
composer config -g repo.packagist composer
例2:修改当前项目的 composer.json 配置文件:
打开命令行窗口(windows用户)或控制台(Linux、Mac 用户),进入你的项目的根目录(也就是 composer.json 文件所在目录),执行如下命令:
composer config repo.packagist composer
上述命令将会在当前项目中的 composer.json 文件的末尾自动添加镜像的配置信息(你也可以自己手工添加):
&repositories&: {
&packagist&: {
&type&: &composer&,
以 laravel 项目的 composer.json 配置文件为例,执行上述命令后如下所示(注意最后几行):
&name&: &laravel/laravel&,
&description&: &The Laravel Framework.&,
&keywords&: [&framework&, &laravel&],
&license&: &MIT&,
&type&: &project&,
&require&: {
&php&: &&=5.5.9&,
&laravel/framework&: &5.2.*&
&require-dev&: {
&fzaninotto/faker&: &~1.4&,
&mockery/mockery&: &0.9.*&,
&phpunit/phpunit&: &~4.0&,
&symfony/css-selector&: &2.8.*|3.0.*&,
&symfony/dom-crawler&: &2.8.*|3.0.*&
&autoload&: {
&classmap&: [
&database&
&psr-4&: {
&App\\&: &app/&
&autoload-dev&: {
&classmap&: [
&tests/TestCase.php&
&scripts&: {
&post-root-package-install&: [
&php -r \&copy('.env.example', '.env');\&&
&post-create-project-cmd&: [
&php artisan key:generate&
&post-install-cmd&: [
&php artisan clear-compiled&,
&php artisan optimize&
&pre-update-cmd&: [
&php artisan clear-compiled&
&post-update-cmd&: [
&php artisan optimize&
&config&: {
&preferred-install&: &dist&
&repositories&: {
&packagist&: {
&type&: &composer&,
OK,一切搞定!试一下 composer install 来体验飞一般的速度吧!
镜像说明:一般情况下,安装包的数据(主要是 zip 文件)一般是从 < 上下载的,安装包的元数据是从 packagist.org 上下载的。
然而,由于众所周知的原因,国外的网站连接速度很慢,并且随时可能被“墙”甚至“不存在”。
“Packagist 中国全量镜像”所做的就是缓存所有安装包和元数据到国内的机房并通过国内的 CDN 进行加速,这样就不必再去向国外的网站发起请求,从而达到加速 composer install 以及 composer update 的过程,并且更加快速、稳定。因此,即使 packagist.org、<
发生故障(主要是连接速度太慢和被墙),你仍然可以下载、更新安装包。
如何安装 Composer
安装前请务必确保已经正确安装了 。打开命令行窗口并执行 php -v 查看是否正确输出版本号。
打开命令行并执行下列命令安装最新版本的 Composer (以下指令摘自
,请前往查看最新的安装指令):
php -r &readfile(&#39;https://getcomposer.org/installer&#39;);& & composer-setup.php
php composer-setup.php
php -r &unlink(&#39;composer-setup.php&#39;);&
执行第一条命令下载下来的 composer-setup.php 脚本将简单的检测 php.ini 中的参数设置,如果某些参数未正确设置则会给出警告;然后下载最新版本的 composer.phar 文件到当前目录。
上述 3 条命令的作用依次是:
下载安装脚本(composer-setup.php)到当前目录。
执行安装过程。
删除安装脚本 -- composer-setup.php 。
局部安装上述下载 Composer 的过程正确执行完毕后,可以将 composer.phar 文件复制到任意目录(比如项目根目录下),然后通过 php composer.phar 指令即可使用 Composer 了!
全局安装全局安装是将 Composer 安装到系统环境变量 PATH 所包含的路径下面,然后就能够在命令行窗口中直接执行 composer 命令了。
Mac 或 Linux 系统:打开命令行窗口并执行如下命令将前面下载的 composer.phar 文件移动到 /usr/local/bin/ 目录下面:
sudo mv composer.phar /usr/local/bin/composer
Windows 系统:
找到并进入 PHP 的安装目录(和你在命令行中执行的 php 指令应该是同一套 PHP)。
将 composer.phar 复制到 PHP 的安装目录下面,也就是和 php.exe 在同一级目录。
在 PHP 安装目录下新建一个 composer.bat 文件,并将下列代码保存到此文件中。
@php &%~dp0composer.phar& %*
最后重新打开一个命令行窗口试一试执行 composer --version 看看是否正确输出版本号。
提示:不要忘了经常执行 composer selfupdate 以保持 Composer 一直是最新版本哦!PHP管理依赖(dependency)关系工具 Composer 安装与使用
投稿:hebedich
字体:[ ] 类型:转载 时间:
Composer 是PHP中用来管理依赖(dependency)关系的工具。你可以在自己的项目中声明所依赖的外部工具库(libraries),Composer会帮你安装这些依赖的库文件。
PHP Composer 安装
系统需求:
Composer 需要PHP5.3.2+ 以上的环境来运行。有几个敏感的PHP设置和编译标志也是必需的,但安装程序会发出警告当存在任何不兼容的情况。
比如PHP的扩展的要求是,安装或重新编译php without –disable-phar
为了从源地址安装软件包,而不是简单的压缩文件包,您将需要安装软件包的版本控制工具,比如git、svn或hg等。
Composer 是兼容多平台的,其运行适用于Windows,Linux和OSX。
安装失败的错误消息:
curl -sS https://getcomposer.org/installer | PHP
#!/usr/bin/env php
some settings on your machine make Composer unable to work properly.
Make sure that you fix the issues listed below and run this script again:
The phar extension is missing.
Install it or recompile php without –disable-phar
Your PHP (5.2.9) is too old, you must upgrade to PHP 5.3.2 or higher.
我的本地默认开发环境是PHP 5.2.9,当我尝试在PHP 5.2.9上安装时,提示版本过低,需要升级到PHP 5.3.2 或者更高的版本。
于是我下载XAMPP 1.7.7 usb lite 版本。
E:\USB\Dropbox\phpstorm\php53&E:\USB\xampp_177\php\php.exe -v
PHP 5.3.8 (cli) (built: Aug 23 :20)
Copyright (c)
The PHP Group
Zend Engine v2.3.0, Copyright (c)
Zend Technologies
XAMPP 1.7.7 下的PHP环境是5.3.8。确认我的PHP环境大于等于PHP5.3.2后。
PHP 5.3 安装 Composer
E:\USB\Dropbox\phpstorm\php53&curl -sS https://getcomposer.org/installer | E:\USB\xampp_177\php\php.exe
#!/usr/bin/env php
Some settings on your machine may cause stability issues with Composer.
If you encounter issues, try to change the following:
The openssl extension is missing, which will reduce the security and stability o
f Composer.
If possible you should enable it or recompile php with –with-openssl
Downloading…
Composer successfully installed to: E:\USB\Dropbox\phpstorm\php53\composer.phar
Use it: php composer.phar
我关闭了XAMPP 1.7.7 Apache的SSL模块,所以Composer提示我警告,为了安全因素建议我开启SSL模块。不开启也不影响使用。
安装时的参数 | PHP,一定要更改为真实的PHP环境路径,比如 | E:\USB\xampp_177\php\php.exe
使用Composer为PHP路径 + 命令,在我们安装的环境中,使用方法为:E:\USB\xampp_177\php/php.exe composer.phar 命令。
我安装的环境是在Windows下,如果在Linux下,而PHP 5.3 环境也不在默认PHP命令下时,应该采用 | /usr/php/53/usr/bin/php,例如:
curl -sS https://getcomposer.org/installer | /usr/php/53/usr/bin/php
安装完成后,检查安装版本。
E:\USB\Dropbox\phpstorm\php53&E:\USB\xampp_177\php/php.exe composer.phar -V
Composer version ac3aeb2a68fc81e2d03c71072bef33
检查PHP Composer命令:
E:\USB\Dropbox\phpstorm\php53&E:\USB\xampp_177\php/php.exe composer.phar
/ ____/___ ____ ___ ____ ____ ________ _____
/ __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
Composer version ac3aeb2a68fc81e2d03c71072bef33
[options] command [arguments]
-h Display this help message.
-q Do not output any message.
-v Increase verbosity of messages.
-V Display this application version.
Force ANSI output.
Disable ANSI output.
–no-interaction -n Do not ask any interactive question.
Display timing and memory usage information
–working-dir
-d If specified, use the given directory as working directory
Available commands:
Short information about Composer
Create an archive of this composer package
Set config options
create-project
Create new project from a package into given directory.
Shows which packages depend on the given package
Diagnoses the system to identify common errors.
dump-autoload
Dumps the autoloader
dumpautoload
Dumps the autoloader
Displays help for a command
Creates a basic composer.json file in current directory.
Installs the project dependencies from the composer.lock file
if present, or falls back on the composer.json.
Lists commands
Adds required packages to your composer.json and installs the
run-script
Run the scripts defined in composer.json.
Search for packages
self-update
Updates composer.phar to the latest version.
selfupdate
Updates composer.phar to the latest version.
Show information about packages
Show a list of locally modified packages
Updates your dependencies to the latest version according to
composer.json, and updates the composer.lock file.
Validates a composer.json
这样我们在PHP5.3环境下的Composer已经安装完成。
类似的方法我们也可以安装PHP 5.4的环境上。
PHP 5.4 安装 Composer
下载XAMPP 1.8.1 usb lite 版本,将得到PHP5.4.7环境。
E:\USB\Dropbox\phpstorm\php53&E:\USB\xampp_181\php\php.exe -v
PHP 5.4.7 (cli) (built: Sep 12 :31)
Copyright (c)
The PHP Group
Zend Engine v2.4.0, Copyright (c)
Zend Technologies
确定版本高于PHP 5.3.2 后,开始安装:
E:\USB\Dropbox\phpstorm\php54&curl -sS https://getcomposer.org/installer | E:\USB\xampp_181\php\php.exe
#!/usr/bin/env php
Some settings on your machine may cause stability issues with Composer.
If you encounter issues, try to change the following:
The openssl extension is missing, which will reduce the security and stability o
f Composer.
If possible you should enable it or recompile php with –with-openssl
Downloading…
Composer successfully installed to: E:\USB\Dropbox\phpstorm\php54\composer.phar
Use it: php composer.phar
安装完成后,检查安装版本。
E:\USB\Dropbox\phpstorm\php54&E:\USB\xampp_181\php/php.exe composer.phar -V
Composer version ac3aeb2a68fc81e2d03c71072bef33
这样,PHP 5.4 环境下的Composer也安装成功了。
PHP Composer 使用
这里我只简单演示使用PHP Composer安装Symfony框架。
首先大概讲解一下命令的标准格式:
php composer.phar create-project symfony/framework-standard-edition path/ 2.2.1
第一个参数PHP为本地PHP开发环境,指向PHP运行命令。
第二个参数,为composer.phar方式下载。
第三个参数,为动作命令,例如create-project,目的是为了创建一个新的项目从一个软件包到指定目录。
第四个参数,为本地安装的目录。
第五个参数,为安装软件包的版本。
根据上述我们在PHP5.4环境下安装的Composer,我们的安装命令为:
E:\USB\Dropbox\phpstorm\php54&E:\USB\xampp_181\php/php.exe composer.phar create-project symfony/framework-standard-edition E:\USB\xampp_181\htdocs\Symfony 2.2.1
安装结果:
Installing symfony/framework-standard-edition (v2.2.1)
– Installing symfony/framework-standard-edition (v2.2.1)
Downloading: 100%
Created project in E:\USB\xampp_181\htdocs\Symfony
Loading composer repositories with package information
Installing dependencies from lock file
– Installing doctrine/lexer (v1.0)
Downloading: 100%
– Installing doctrine/annotations (v1.1)
Downloading: 100%
– Installing doctrine/cache (v1.0)
Downloading: 100%
– Installing doctrine/collections (v1.1)
Downloading: 100%
– Installing twig/twig (v1.12.2)
Downloading: 100%
– Installing psr/log (1.0.0)
Downloading: 100%
– Installing doctrine/inflector (v1.0)
Downloading: 100%
– Installing doctrine/common (2.4.0-RC1)
Downloading: 100%
– Installing symfony/symfony (v2.2.1)
Downloading: 100%
– Installing jdorn/sql-formatter (v1.2.0)
Downloading: 100%
– Installing doctrine/dbal (2.3.3)
Downloading: 100%
– Installing doctrine/doctrine-bundle (v1.2.0-beta1)
Downloading: 100%
– Installing doctrine/orm (2.3.3)
Downloading: 100%
– Installing jms/cg (1.0.0)
Downloading: 100%
– Installing phpoption/phpoption (1.2.0)
Downloading: 100%
– Installing jms/parser-lib (1.0.0)
Downloading: 100%
– Installing jms/metadata (1.3.0)
Downloading: 100%
– Installing jms/aop-bundle (1.0.0)
Downloading: 100%
– Installing jms/di-extra-bundle (1.3.0)
Downloading: 100%
– Installing jms/security-extra-bundle (1.4.0)
Downloading: 100%
– Installing sensio/distribution-bundle (v2.2.1)
Downloading: 100%
– Installing sensio/framework-extra-bundle (v2.2.1)
Downloading: 100%
– Installing sensio/generator-bundle (v2.2.1)
Downloading: 100%
– Installing kriswallsmith/assetic (v1.1.0-alpha4)
Downloading: 100%
– Installing symfony/assetic-bundle (v2.1.2)
Downloading: 100%
– Installing monolog/monolog (1.4.1)
Downloading: 100%
– Installing symfony/monolog-bundle (v2.2.0)
Downloading: 100%
– Installing swiftmailer/swiftmailer (v4.3.0)
Downloading: 100%
– Installing symfony/swiftmailer-bundle (v2.2.0)
Downloading: 100%
– Installing twig/extensions (v1.0.0)
Downloading: 100%
kriswallsmith/assetic suggests installing leafo/lessphp (Assetic provides the integration with the lessphp LESS compiler)
kriswallsmith/assetic suggests installing leafo/scssphp (Assetic provides the integration with the scssphp SCSS compiler)
kriswallsmith/assetic suggests installing leafo/scssphp-compass (Assetic provides the integration with the SCSS compass plugin)
kriswallsmith/assetic suggests installing ptachoire/cssembed (Assetic provides the integration with phpcssembed to embed data uris)
monolog/monolog suggests installing doctrine/couchdb (Allow sending log messages to a CouchDB server)
monolog/monolog suggests installing ext-amqp (Allow sending log messages to an AMQP server (1.0+ required))
monolog/monolog suggests installing ext-mongo (Allow sending log messages to a MongoDB server)
monolog/monolog suggests installing mlehner/gelf-php (Allow sending log messages to a GrayLog2 server)
monolog/monolog suggests installing raven/raven (Allow sending log messages to a Sentry server)
Generating autoload files
Clearing the cache for the dev environment with debug true
Installing assets using the hard copy option
Installing assets for Symfony\Bundle\FrameworkBundle into web/bundles/framework
Installing assets for Acme\DemoBundle into web/bundles/acmedemo
Installing assets for Sensio\Bundle\DistributionBundle into web/bundles/sensiodistribution
从命令行结果,我们看到了整个Symfony框架的安装过程与结果。
PHP Composer 定义依赖关系
Composer在使用时会自动寻找composer.json这个文件。 composer.json将用来定义整个项目的依赖包。例如:
"require": {
"monolog/monolog": "1.2.*"
依赖包简单的说明,我们的项目需要一些从1.2开始的任何版本的monolog/monolog包。
Composer是PHP中的一个依赖关系管理工具。通过Composer我们可以在发布软件时节省大量的文件数目和控制依赖包的版本。
PHP Composer 项目
Composer 项目官方:
Composer Github项目:
PHP Composer软件包列表:
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具width:100%">
很有看点!
width:100%">
为失踪儿童祈福,我们在等你回家!
width:100%">
鄙视楼下的顶帖没我快,哈哈
width:100%">
专业抢沙发的!哈哈
width:100%">
好贴,绝对要支持下
width:100%">
突然觉得寻找一个思念的角度说的很有道理,赞一个!
width:100%">
接下来是见朕骑妓的时刻
width:100%">
吹牛的人越来越多了!
width:100%">
是什么日子?
width:100%">
12345678910
打开手机扫一扫
Comsenz Inc. Design: Dean. DiscuzFans.使用PHPStorm+Composer快速初始化项目 - 推酷
使用PHPStorm+Composer快速初始化项目
PHPStorm是一款非常出色的PHP IDE;vim的忠实拥泵,可以添加一个IdeaVim的插件,继续使用vim的功能。二者结合,当属神器。当然,我还希望能更先进点,Composer的出现,使得PHP项目的代码组织和包依赖变的比以前简单了。三者的结合会如何?
使用PHPStorm创建项目,这个我就不再废话了。
无论你是通过版本控制系统checkout一个项目;还是直接 create一个本地项目;或者create一个远程项目 ... ...
俺都不care。Just do it。
创建项目组织结构
所谓项目组织结构,最主要的就是目录结构了,我个人的习惯是
project_root
-webroot nginx或者apache或者iis的root目录
-index.php
项目入口文件
-vendor composer管理的包,库所在目录
-composer.json
-依赖的库,包等等,使用composer管理
-apps 自己根据情况设定或者根据使用的框架来设定子目录
-data 一些数据
-docs 一些文档
可根据个人情况自由设定,但是使用composer一定会有vendor目录,vendor目录也不需要你手动创建,使用composer的时候会自动创建
使用composer初始化项目
包(phar包类似java的jar包),放在项目根目录下
当你的工作目录是 workspace , 项目目录为 workspace/project_name,其实你可以直接把composer.phar放在workspace目录下
在workspace/project_name 目录下,执行
php ../composer.phar command
即可(command可替换为任何可用命令)
运行PHPStorm的Terminal工具,执行composer相关命令
当然你也可以 win+r键,输入cmd,进入dos命令行,然后切换目录到当前项目根目录执行命令
php composer.phar init
初始化 composer.json文件,运行命令会要求你输入一些信息,根据提示做吧
Define your dependencies
这一步,就是引入外部依赖
php composer.phar install
安装依赖包到vendor目录下,如果没有vendor目录会自动创建
当然你也可以在项目根目录下手动创建composer.json,然后再
php composer.phpar install
如果想删除对某个包的依赖,只能是手动删除vendor目录下的包,然后
php composer.phar update
顺带说下,phpstorm里面新建项目可选择创建composer项目,那为什么要使用命令行?原因就是composer的库,一直在加载的路上
不知道gfw弄的还是怎么搞的,命令行虽然慢点一定能成功。
Fuck GFW 。
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文件自身
composer command --help 以上所有命令都可以添加 --help选项查看帮助信息
更详细准确的命令信息,请访问
后期依赖添加
已发表评论数()
请填写推刊名
描述不能大于100个字符!
权限设置: 公开
仅自己可见
正文不准确
标题不准确
排版有问题
主题不准确
没有分页内容
图片无法显示
视频无法显示
与原文不一致

我要回帖

更多关于 如何删除composer 的文章

 

随机推荐