我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...

安装好composer软件之后,基本上当看到根目录下面有composer.json的时候,就需要在当前目录下调用composer install命令了,这个应该是属于条件反射类型的情形。

苏南大叔:composer安装如何加速下载?composer的基本使用 - php-composer
composer安装如何加速下载?composer的基本使用(图3-1)

Tip:在mac下面,composer不用sudo,这个和npm是不一样的。使用sudo的话,composer反而会给出不用sudo的提示。

加速下载

凡事都有但是,composer install的过程往往非常慢,慢到无法忍受。比如安装一个新的laravel的时候,慢的就非常明显。等的你混混欲睡,事实上,只需要把依赖包都打包进去,提供给大家下载不是更好嘛。唉,老外的心思,我们不懂。

本篇文章主要解决『慢』的问题,方法很简单,就是给composer换个默认的源地址,换成国内的composer镜像。这有点像npmcnpm。解决的都是类似的问题。

方法如下:修改composer.json。添加如下内容:

{
    //已有的json内容
    "config": {
        "secure-http": false,
        "preferred-install": "dist",
        "sort-packages": true
    },
    "repositories": {
        "packagist": {
            "type": "composer",
            "url": "https://packagist.phpcomposer.com"
        }
    }
}

苏南大叔:composer安装如何加速下载?composer的基本使用 - composer_json
composer安装如何加速下载?composer的基本使用(图3-2)

具体的实现细节就不用深究了。就知道放了这些代码,我们就可以很快速的composer install了,这样就足够了。这个服务是由 下面的这个镜像提供的,如果将来有一天,它不能正常使用了,请换个新的地址即可。

更多加速方案

最常见的镜像地址:

composer config -g repos.packagist composer https://packagist.phpcomposer.com

腾讯云提供的:

composer config -g repos.packagist composer https://mirrors.cloud.tencent.com/composer/

阿里云加速方案(推荐),已验证:

composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

安装依赖

composer install

composer install之后,会在根目录下面生成一个vendor目录,里面就是下载回来的依赖包了。vendor目录下面会有个autoload.php,把这个文件给其他php文件使用即可。这个文件是自动生成的,所以千万不要试图手工修改它哦。

没有经过上述命令的项目,可能会出现如下错误提示:

Warning: require_once(/code/www/php/app_api/bootstrap/../vendor/autoload.php): failed to open stream: No such file or directory in /code/www/php/app_api/bootstrap/app.php on line 3

Fatal error: require_once(): Failed opening required '/code/www/php/app_api/bootstrap/../vendor/autoload.php' (include_path='.:/usr/local/Cellar/php/7.2.7/share/php/pear') in /code/www/php/app_api/bootstrap/app.php on line 3

苏南大叔:composer安装如何加速下载?composer的基本使用 - need-composer-install
composer安装如何加速下载?composer的基本使用(图3-3)

安装某个依赖包

当有的依赖包需要添加的时候,请输入下面的命令。(范例中安装了个wechat的第三方依赖包),注意:这个命令是require,而不是install

composer require "overtrue/wechat" -vvv   

当然也可以指定版本,例如:

composer require "overtrue/wechat:3.3.24" -vvv   

require命令会自动生成composer.json文件,会更新composer.lock

当需要重新生成autoload.php的时候(例如安装了新的依赖包的时候),请执行:

composer dump-autoload  

当需要更新代码的时候,请执行:

composer update

相关链接

小结

整体来说,命令挺简单的。安装好依赖包之后,请记得给他们整体打包。这样的话,重新部署的时候,就可以不用看composer的脸色做事了。你懂的。

最后ps一下:鉴于这个composer install的过程,是非常痛苦的。因此,友情提示:install完成后的vendor目录,请注意备份保存。下次安装,直接复制过去即可。不必再次重复极其痛苦的composer install过程了。

更多composer相关经验文字,请点击下面的链接查看。

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。

 【福利】 腾讯云最新爆款活动!1核2G云服务器首年50元!

 【源码】本文代码片段及相关软件,请点此获取更多信息

 【绝密】秘籍文章入口,仅传授于有缘之人   php    composer