文章正文
别再到处寻找类似PHP的扩展包了,对于现代语言来说,包管理器基本上都是标配了。 Java 有 Maven,有 pip,Ruby 有 gems,有 npm。 PHP 是 PEAR,但是 PEAR 有很多陷阱:
幸运的是,我们有一个强大的 PHP 依赖管理工具。 它是开源的,使用简单,并且很容易提交您自己的包。
比如我们一开始不使用框架,想要一个验证码,我们就得先去或者在其他地方找到一个验证码类,然后在项目中点击它,然后编辑运行,以便我们到达之后的项目维护中可能会出现问题。 如果是网上开源的,还可以点击一个手表查看是否有bug修复或者新版本发布,可以及时更新。
如果你下载的扩展包太多,就会需要各种各样的,而且可能会出现命名空间冲突,得根据项目来更改命名空间。 如果扩展包升级了,还得重新下载编辑,非常不方便的。 于是依赖管理库就诞生了。
以上是比较重要的需求场景。
易于安装和升级扩展包
做就做,不用到处写
避免命名空间冲突
我一般都会去、码云等平台寻找扩展包,但是现在也有一个网站集成了所有的包,这意味着现在的开发方式:先在网上搜索,然后使用安装即可升级。
安装
对于傻瓜式安装,只需直接点击,下载并安装,安装程序会为您下载并设置您的 PATH 环境变量,以便您可以轻松地从任何目录调用它。
安装过程中需要注意的是找到php.exe的根目录并选择正确的PHP路径。 这里就不提供截图了,因为我还没有下载,是手动安装的。
选择目录应如下所示:
D:\phpStudy\php\php-7.0.12-nts\php.exe
下面还是以手动安装为主,我觉得还是很有用的:
首先下载一个.phar文件,并将phar文件放在一个文件夹中。 您可以随意将其放在任何文件夹中。
然后打开DOS窗口,或者快捷键+R输入cmd,使用以下命令,先进入你放置phar文件的目录
D:\developer\composer>echo @php "%~dp0composer.phar" %*>composer.bat
安装成功的标志是在命令行输入
composer -v
显示以下内容
当我看到这个的时候,我就认为安装成功了。 在中国局域网中,使用起来比较慢,好在中国有镜像。 执行以下命令切换到国内镜像。 国内镜像所做的就是缓存所有的安装包和元数据,发送到国内机房,通过国内CDN进行加速,这样就不需要向国外网站发起请求。
composer config -g repo.packagist composer https://packagist.phpcomposer.com
这样做相当于全局更改配置。 我选择修改当前项目的.json配置文件:
{
"repositories": {
"packagist": {
"type": "composer",
"url": "https://packagist.phpcomposer.com"
}
}
}
常用命令
更新 composer 本身,请经常执行 composer selfupdate 以保持 Composer 一直是最新版本。
composer selfupdate
等价于
composer self-update
当我们更改了 composer.json 文件中的 autoload 时,需要执行 composer dumpautoload,来让 autoload 立即生效。而不必执行 install 或 update 命令。
composer dumpautoload
等价于
composer dump-autoload
该命令有两个常用选项:
-- (-o):将 PSR-0/4 转换为以加快加载速度。 这在生产环境中特别有用,但可能需要一些时间才能运行,因此当前不是默认设置。
--no-dev:禁用-dev规则。
composer install
根据当前目录下.lock(锁定文件)或.json文件中定义的依赖关系安装依赖包。
该命令将首先检查 .lock 文件是否存在,如果存在,它将下载 .lock 文件中指定的版本,忽略 .json 文件中的定义。
# 查看 composer install 的帮助信息
composer install -h
# 只安装 require 中定义的依赖,而不安装 require-dev 中定义的依赖
composer install --no-dev
如果您想要更新依赖项版本,或者修改 .json 文件中的依赖项并想要执行 .json 文件中定义的更新操作,请使用该命令。
composer update
该命令一般用于安装新的依赖包,并将依赖写入当前目录下的.json文件中。
如果在 .json 文件中添加或更改依赖项,则将安装或更新修改后的依赖项。
composer require
也可以直接在命令中指定需要安装的依赖。
composer require barryvdh/laravel-ide-helper
--dev 选项对应于-dev。 如果您的依赖包仅用于开发环境,建议添加 --dev 选项。
composer require --dev barryvdh/laravel-ide-helper
-
您可以使用 - 从现有包创建新项目。
相当于执行git clone命令后,将这个包的依赖安装到自己的目录中。
该命令有几个常见用途:
您可以快速部署您的应用程序。
您可以查看任何资源包并为其开发补丁。
多人开发项目可以使用它来加速应用程序初始化。
# 安装 Laravel 项目
composer create-project --prefer-dist laravel/laravel blog 5.5.*
如果不指定版本号,则默认安装最新版本。
---dist:当软件包可用时从 dist 安装。
集成环境安装失败
错误信息:
The "https://getcomposer.org/versions" file could not be downloaded: failed to open stream: 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。
The "https://getcomposer.org/download/1.2.0/composer.phar.sig" file could not be downloaded: SSL: crypto enabling timeout
Failed to enable crypto
failed to open stream: operation failed
1.安装需要打开扩展,默认关闭
2、将php目录下的.dll、.dll以及php/ext文件夹下的.dll复制到\文件夹下。
3.不需要CA证书
CA证书下载地址:
选择后,右键单击并选择另存为
下载成功后放到tmp文件夹下
4.然后修改php.ini文件
openssl.cafile = "D:\phpStudy\tmp\cacert.pem"
5.重启即可
错误信息:
failed to open stream: HTTP request failed!
1、检查php的curl扩展是否启用
2. 检查这两个配置是否启用。
allow_url_fopen = On
user_agent="PHP"
也可以这样配置=“/4.0(;MSIE 6.0;NT 5.0)”)
模拟浏览器访问也是一个不错的选择
3.打开后,重启并重启
PS:。 配置选项仅受 PHP 5.6.0 以上版本支持。
以上就是文章的全部内容。 有学习和经验交流的可以添加PHP自学中心。 共同学习、交流、进步!
让学习成为一种习惯