• Thinkphp使用composer安装扩展包教程


    一、删除php禁用函数putenv

     1、可以在宝塔面板的PHP管理 →  禁用函数 →  删除putenv

     2、也可以在php的配置文件php.ini里搜索disable_functions,然后删除字符串数组里的putenv

    3、注意:如果你的服务器安装多个版本的PHP,那么每个版本都需要删除putenv

     二、安装 composer 

    官方源:

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

    阿里云源:

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

    腾讯云源:

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

     三、composer的常用命令

    1、查看composer版本

    composer -v

    2、升级composer版本

    composer self-update

    3、composer从2版本降到1版本

    1. composer self-update 1.10.24
    2. 或者
    3. composer self-update --1

    4、更新composer扩展插件版本

    composer update

    更新但不自动升级到更高版本

    composer update --no-plugins

    5、查看composer 的配置

    composer config -g -l

    6、修改composer 的镜像源

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

    composer 比较常用的镜像源

    1. composer官方 https://packagist.org
    2. php官方 https://packagist.phpcomposer.com
    3. 阿里云 https://mirrors.aliyun.com/composer
    4. 腾讯云 https://mirrors.cloud.tencent.com/composer
    5. 华为云 https://mirrors.huaweicloud.com/repository/php
    6. laravel(中国) https://packagist.laravel-china.org

    7、显示所有的扩展包

    composer show -

    8、查看关联包 

    composer  why 命名空间/包名

    例如: composer  why symfony/deprecation-contracts

    什么是关联包?

    意思就是说,你想安装我这个扩展插件,前提是要先安装另一个插件。我们使用composer remove命令移除某个扩展包时,提示失败,就是因此有关联的包在使用,因此不能直接移除。

    9、移除包

    composer remove 命名空间/包名

    例如: composer remove symfony/deprecation-contracts

    10、安装某个扩展包

    composer require 命名空间/包名

    例如: composer require symfony/deprecation-contracts

    指定安装1.0有最高版本

    composer require topthink/think-captcha=1.*

    指定安装某个版本

    composer require guzzlehttp/guzzle ^6.3

    四、常见问题

    1、更新composer出现版本不匹配,插件丢失等问题的解决方法:

    • 删除composer.lock 文件,删除vendor目录里的全部文件
    • 重新执行
    1. composer install --ignore-platform-reqs
    2. 或者
    3. composer update --ignore-platform-reqs

    --ignore-platform-reqs 这个是忽略php版本匹配的意思

     2、部分扩展插件对php版本有要求,如果报错信息里提示,那么我们可以通过查看vendor扩展目录里指定插件自带的composer.json配置文件,如下图:

     

  • 相关阅读:
    web:[极客大挑战 2019]LoveSQL
    Unity发布的手机游戏插上耳机也是外音
    1.DesignForSetting\1.AutoCreateMatchGroup
    python实现综合评价模型TOPSIS
    制作一个简单HTML旅游网站(HTML+CSS+JS)无锡旅游网页设计与实现8个页面
    力扣(LeetCode)124. 二叉树中的最大路径和(C++)
    S7-200SMART案例分析——运动控制编程三轴控制(一)
    文件包含漏洞(一)
    使用 webpack 打包时,如何更好地利用 long term cache
    vue-devTools Chrome安装配置
  • 原文地址:https://blog.csdn.net/qq15577969/article/details/126687778