加入收藏 | 设为首页 | 会员中心 | 我要投稿 我爱故事小小网_铜陵站长网 (http://www.0562zz.com/)- 视频终端、云渲染、应用安全、数据安全、安全管理!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

教你如何使用PHP依赖管理工具Composer

发布时间:2022-06-24 04:13:59 所属栏目:PHP教程 来源:互联网
导读:Composer是php的一个依赖管理工具,允许你声明项目所依赖的代码库,它会在你的项目中为你安装他们。这篇文章教你如何使用Composer。 依赖处理容易出问题 配置非常复杂 难用的命令行接口 好在我们有 Composer,PHP依赖管理的利器。它是开源的,使用起来也很
  Composer是php的一个依赖管理工具,允许你声明项目所依赖的代码库,它会在你的项目中为你安装他们。这篇文章教你如何使用Composer。

  依赖处理容易出问题
 
  配置非常复杂
 
  难用的命令行接口
 
  好在我们有 Composer,PHP依赖管理的利器。它是开源的,使用起来也很简单,提交自己的包也很容易。
 
  举个例子,平时我们开始的时候如果不是用框架,想要一个验证码,就要先去Gihutb或者其他地方找一个验证码类,然后在项目中include一下,再编辑编辑就跑起来了,以至于到后期项目维护都可能会出现问题。在Github上开源的,那还能点个watch,看到有Bug修复或新版本发布,能及时跟着升级。
 
  如果下载的扩展包多了,就需要各种include了,还有可能出现命名空间冲突的问题,又要根据项目去更改命名空间,如果扩展包升级了,又要重新下载编辑,这是十分不方便的。所以Composer依赖管理库就这样诞生了。
 
  上面就是Compser比较重要的需求场景。
 
  1.能方便安装升级扩展包
 
  2.只include就行,不用到处写include
 
  3.避免命名空间的冲突
 
  平时都去Github、码云等平台上找扩展包,而现在也有一个网站把所有包综合起来,也就说现在的开发方式:首先在packagist上搜索,然后用Composer安装升级。
 
  安装Composer
 
  傻瓜式安装的话就是直接点击https://getcomposer.org/Composer-Setup.exe,下载安装就行了,安装程序将为你下载Composer并设置你的PATH环境变量,以便你可以简单地Composer从任何目录调用。
 
  安装的过程中需要注意的是要找到php.exe的根目录,选择正确的PHP路径。这里就不提供截图了,因为我也没下好,而且我也是手动安装的。
 
  选择目录应该是这样的:
 
  D:phpStudyphpphp-7.0.12-ntsphp.exe
 
  下面还是着重介绍手动安装的,我觉得这种方法十分好用:
 
  先下载一个composer.phar文件,将phar文件放在developer文件夹中,这个你随意,不限制放在哪个文件夹中。
 
  然后打开DOS窗口,或者快捷键windows+R输入cmd,使用以下命令,先要进入到你放置phar文件的目录
 
  D:developercomposer>echo @php "%~dp0composer.phar" %*>composer.bat
 
  安装成功的标志就是在命令行输入
 教你如何使用PHP依赖管理工具Composer
  composer -v
 
  显示如下内容
 
  看到这里我就都当成Composer已经安装成功了,在中国局域网内,使用Composer是比较慢的,不过好在国内有镜像,执行如下命令切换到国内的镜像,国内镜像所做的就是缓存所有安装包和元数据到国内的机房并通过国内的 CDN 进行加速,这样就不必再去向国外的网站发起请求。
 
  composer config -g repo.packagist composer https://packagist.phpcomposer.com
 
  这样做就相当于全局更改了配置,我选择修改当前项目的 composer.json 的配置文件:
 
  {
      "repositories": {
          "packagist": {
              "type": "composer",
              "url": "https://packagist.phpcomposer.com"
          }
      }
  }
  composer常用命令
 
  selfupdate
 
  更新 composer 本身,请经常执行 composer selfupdate 以保持 Composer 一直是最新版本。
 
  composer selfupdate等价于
 
  composer self-update
 
  dumpautoload
 
  当我们更改了 composer.json 文件中的 autoload 时,需要执行 composer dumpautoload,来让 autoload 立即生效。而不必执行 install 或 update 命令。
 
  composer dumpautoload
 
  等价于
 
  composer dump-autoload
 
  dumpautoload 命令有两个常用的选项:
 
  --optimize (-o): 转换 PSR-0/4 autoloading 到 classmap ,以获得更快的载入速度。这特别适用于生产环境,但可能需要一些时间来运行,因此它目前不是默认设置。
 
  --no-dev: 禁用 autoload-dev 规则。
 
  install
 
  composer install
 
  依据当前目录下的 composer.lock(锁文件) 或 composer.json 文件,所定义的依赖关系,安装依赖包。
 
  install 命令会先检查 composer.lock 锁文件是否存在,如果存在,它将下载 composer.lock 文件中指定的版本,而忽略 composer.json 文件中的定义。
 
  composer update
 
  require
 
  require 命令一般用来安装新的依赖包,并将依赖写入当前目录的 composer.json 文件中。
 
  如果 composer.json 文件中,添加或改变了依赖,修改后的依赖关系将被安装或者更新。
 
  composer require
 
  你也可以直接在命令中指明需要安装的依赖包。
 
  composer require barryvdh/laravel-ide-helper
 
  --dev 选项和 require-dev 相对应。如果你的依赖包仅仅用于开发环境,建议加上 --dev 选项。
 
  1、安装composer需要开启openssl拓展 而phpstudy默认是关闭的
 
  2、将php目录下的ssleay32.dll,libeay32.dll以及php/ext文件夹下的:php_openssl.dll 3个文件拷贝到WINDOWSsystem32 文件夹下。
 
  3、openssl需要CA证书 phpstudy也是没有的
 
  CA证书下载地址:http://curl.haxx.se/docs/caextract.html
 
  选中之后单击右键选择另存为
 
  下载成功之后放到tmp文件夹下面
 
  4、然后修改php.ini文件
 
  openssl.cafile = "D:phpStudytmpcacert.pem"
 
  5、重启phpStudy就可以了报错提示:
 
  1 failed to open stream: HTTP request failed!
 
  1、检查一下php的curl拓展是否开启
 
  2、检查这两个配置是否开启。
 
  allow_url_fopen = On
 
  user_agent="PHP"
 
  也可以这样配置 user_agent="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)")
 
  模拟浏览器访问也是一个不错的选择
 
  3、开启之后重启重启phpStudy就可以了
 
  PS: openssl.cafile 配置选项, 是 PHP 5.6.0. 以上的版本才支持的。

(编辑:我爱故事小小网_铜陵站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读