依赖管理
PHP 有很多可供使用的库、框架和组件。通常你的项目都会使用到其中的若干项 - 这些就是项目的依赖。直到最近,PHP 也没有一个很好的方式来管理这些项目依赖。即使你通过手动的方式去管理,你依然会为自动加载器而担心。但现在这已经不再是问题了。 目前 PHP 有两个使用较多的包管理系统 - Composer 和 PEAR。Composer 是 PHP 所使用的主要的包管理器,然而在很长的一段时间里,PEAR 曾经扮演着这个角色。你应该了解 PEAR 是什么,因为即使你从来没有使用过它,你依然有可能会碰到对它的引用。 Composer 与 PackagistComposer 是一个杰出 的依赖管理器。在 现在已经有许多 PHP 第三方包已兼容 Composer,随时可以在你的项目中使用。这些「packages(包)」都已列在 Packagist,这是一个官方的 Composer 兼容包仓库。 如何安装 Composer你可以安装 Composer 到局部 (在你当前工作目录;这里不是很推荐)或是全局(e.g. /usr/local/bin)。我们假设你想安装 Composer 到局部。在你的项目根目录输入: curl -s https://getcomposer.org/installer | php 这条命令将会下载 Windows环境下安装对于Windows 的用户而言最简单的获取及执行方法就是使用 ComposerSetup 安装程序,它会执行一个全局安装并设置你的 如何手动安装 Composer手动安装 Compose r是一个高端的技术;仅管如此还是有许多开发者有各种原因喜欢使用这种交互式的应用程序安装 Composer。在安装前请先确认你的PHP安装项目如下:
由于手动安装没有执行这些检查,你必须自已衡量决定是否值得做这些事,以下是如何手动安装 Composer : curl -s https://getcomposer.org/composer.phar -o $HOME/local/bin/composer chmod +x $HOME/local/bin/composer 路径 当你遇到文档指出执行 Composer 的命令是 composer install 本章节会假设你已经安装了全局的 Composer。 如何设置及安装依赖Composer 会通过一个 composer require twig/twig:~1.8 另外 composer install 接下来,添加这一行到你应用的主要 PHP 文件中,这将会告诉 PHP 为你的项目依赖使用 Composer 的自动加载器。 {% highlight php %} <?php require 'vendor/autoload.php'; {% endhighlight %} 现在你可以使用你项目中的依赖,且它们会在需要时自动完成加载。 更新你的依赖Composer 会建立一个 当你需要灵活的定义你所需要的依赖版本时,这是最有用。 举例来说需要一个版本为 ~1.8 时,意味着 “任何大于 1.8.0 ,但小于 2.0.x-dev 的版本”。你也可以使用通配符 更新通知要接收关于新版本的更新通知。你可以注册 VersionEye,这个 web 服务可以监控你的 Github 及 BitBucket 帐号中的 检查你的依赖安全问题Security Advisories Checker 是一个 web 服务和一个命令行工具,二者都会仔细检查你的 处理 Composer 全局依赖Composer 也可以处理全局依赖和他们的二进制文件。用法很直接,你所要做的就是在命令前加上 {% highlight console %} composer global require phpunit/phpunit {% endhighlight %} 这将会创建一个
PEAR 介绍PEAR 是另一个常用的依赖包管理器,它跟 Composer 很类似,但是也有一些显著的区别。 PEAR 需要扩展包有专属的结构,开发者在开发扩展包的时候要提前考虑为 PEAR 定制,否则后面将无法使用 PEAR. PEAR 安装扩展包的时候,是全局安装的,意味着一旦安装了某个扩展包,同一台服务器上的所有项目都能用上,当然,好处是当多个项目共同使用同一个扩展包的同一个版本,坏处是如果你需要使用不同版本的话,就会产生冲突. 如何安装 PEAR你可以通过下载 如果你是使用 Linux,你可以尝试找下系统应用管理器,举个栗子,Debian 和 Ubuntu 有个 如何安装扩展包如果扩展包是在 PEAR packages list 这个列表里面的,你可以使用以下命令安装: {% highlight console %} pear install foo {% endhighlight %} 如果扩展包是托管到别的渠道上,你需要
使用 Composer 来安装 PEAR 扩展包如果你正在使用 Composer,并且你想使用一些 PEAR 的代码,你可以通过 Composer 来安装 PEAR 扩展包. 下面是从 {% highlight json %} { "repositories": [ { "type": "pear","url": "http://pear2.php.net" } ],"require": { "pear-pear2/PEAR2_Text_Markdown": "*","pear-pear2/PEAR2_HTTP_Request": "*" } } {% endhighlight %} 第一部分
前缀 "pear" 是为了避免冲突写死的. 成功安装扩展包以后,代码会放到项目的
在代码里面可以这样使用: {% highlight php %} <?php $request = new pear2HTTPRequest(); {% endhighlight %}
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |