首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【译】现代化的PHP开发--Composer

当有很多个项目 ,它们共享相同的依赖项,但每一个依赖项都有不同的版本时,PEAR这种方法会造成很多混乱和挫折。 为了能让你的代码被PEAR的存储库所接受,需要一定数量的UP投票。...或者我们从github上去下载别人的项目,在项目中运行此命令,也会自动下载项目中所列的依赖项的包。...在某些部署策略中,我们在生产环境中运行此命令,以便在从存储库中提取应用程序的源代码后来安装该应用程序。...composer.lock: 虽然composer.json文件允许我们使用版本约束定义所需的包,但composer.lock会跟踪项目中安装的包的确切版本。换句话说,它存储了我们项目的当前状态。...composer install首先读取composer.lock,这使得它成为一个更安全的命令,以下是为什么的理由: 如果从项目中完全删除vender文件夹,则将删除composer下载的所有包。

75910

如何在Debian 8上安装和使用Composer

在下一节中,您将生成该composer.json文件,其中包含项目所依赖的PHP库。...使用Composer将程序包作为依赖项安装在项目中的过程通常包括以下步骤: 确定应用程序需要哪种库 在Packagist.org上研究一个合适的开源库,Packagist.org是Composer的官方存储库...选择您要依赖的包 运行composer require以在composer.json文件中包含依赖项并安装程序包 我们将通过一个简单的演示应用程序,看它是如何工作的。...命名空间是我们在项目中需要包时所需要的。 现在我们确定了我们想要的库,让我们将它添加到composer.json文件中。...下一步是在我们的应用程序中实际使用这些库。为此,Composer提供了autoload.php便于加载外部库的过程的文件。

1.6K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    如何在Debian 9上安装和使用Composer

    要在项目中使用Composer,您需要一个composer.json文件。该composer.json文件告诉Composer您需要为项目下载哪些依赖项,以及允许安装每个软件包的哪些版本。...您可以以相同的方式添加其他依赖项,而无需手动编辑此文件。 使用Composer将程序包作为依赖项安装在项目中的过程包括以下步骤: 确定应用程序需要哪种库。...一般来说,您不需要篡改composer.json文件中的版本约束。但是,某些情况可能需要您手动编辑约束 - 例如,当您发布所需库的主要新版本并且要升级时,或者您要使用的库不遵循语义版本控制时。...第5步 - 更新项目依赖项 每当您想要将项目依赖项更新为更新版本时,请运行update命令: composer update 这将检查项目中所需库的较新版本。...结论 Composer是每个PHP开发人员在其实用程序带中应具有的强大工具。在本教程中,您在Debian 9上安装了Composer并在一个简单的项目中使用它。您现在知道如何安装和更新依赖项。

    1.7K20

    如何在Ubuntu 18.04上安装和使用Composer

    要在项目中使用Composer,您需要一个composer.json文件。该composer.json文件告诉Composer您需要为项目下载哪些依赖项,以及允许安装每个软件包的哪些版本。...您可以以相同的方式添加其他依赖项,而无需手动编辑此文件。 使用Composer将程序包作为依赖项安装在项目中的过程包括以下步骤: 确定应用程序需要哪种库。...每个包都有一个唯一的标识符(命名空间),格式为GitHub用于其存储库的vendor/package格式。我们要安装的库使用的是cocur/slugif命名空间。您需要命名空间才能要求项目中的包。...一般来说,您不需要篡改composer.json文件中的版本约束。但是,某些情况可能需要您手动编辑约束 - 例如,当您发布所需库的主要新版本并且要升级时,或者您要使用的库不遵循语义版本控制时。...第5步 - 更新项目依赖项 每当您想要将项目依赖项更新为更新版本时,请运行以下update命令: composer update 这将检查项目中所需库的较新版本。

    4.3K00

    你必须知道的 17 个 Composer 最佳实践(已更新至 22 个)

    那么 composer.lock 文件就会得到一个合并冲突。 千万别试图手动解决冲突,这是因为 composer.lock 文件包含了定义 composer.json 中依赖项的哈希值。...然后运行 composer update --lock ,就会把 composer.json 文件的修改更新到 composer.lock 文件中。...对每一个老版本的依赖项进行升级都要尊循如下步骤: 创建新分支 在 composer.json 文件中更新该依赖项版本到最新版本号 运行 composer update phpunit/phpunit -...Tip 12: 在 composer.json 中定义其他类型的依赖 除了定义库作为依赖项外,也以在这儿定义其他东西。...比如,从Github上添加一个 fork,使用它的 API 下载整个版本库的 .zip 文件,而不用克隆。 不过对一个私有的 Gitlab 安装来讲会更复杂。

    7.5K20

    如何在 CentOS 8 上安装和使用 Composer创建PHP项目

    Composer 是一种工具,可让您更好地组织用 PHP 开发的项目所使用的依赖项。除了轻松安装第三方库之外,Composer 还提供了几个命令来检查和安装任何更新、删除不必要的依赖项等等。...通过 Composer 安装的所有库都将保存在我们项目的“vendor”目录中,并存储在 composer.json 文件中。 在本教程独白中,将使用一个能够管理日志文件的库。...如果文件不存在,这是项目的第一次安装。在这种情况下,Composer 将在“vendor”文件夹中安装由 composer.json 文件指示的所有依赖项及其最新可用版本。...另一方面,如果该文件已经存在于当前目录中,Composer 将下载 composer.json 文件中指定的依赖项,但使用 composer.lock 文件中指示的版本号。...如果您的项目使用软件修订工具,建议在存储库中不仅要保存 composer.json 文件,还要保存上面提到的 composer.lock 文件。

    1.3K20

    composer (一) -- 依赖管理

    你可以在自己的项目中声明所依赖的外部工具库(libraries),Composer 会帮你安装这些依赖的库文件。类似于 go 的 go mod。...一路回车就可以创建一个没有什么依赖的 composer.json 文件。...通过包介绍中的命令进行安装 composer require illuminate/contracts 通过输出可以看到,他也会自动去安装一些自己依赖的包,最后会重新生成自动加载文件。...通常用来更新依赖包的版本或增加了新的依赖时使用 删除依赖 只需要修改 composer.json 文件的 require 中的包键值对,再进行 composer update即可删除依赖。...命令删除 composer remove packageName # packageName 为要删除的包名 composer.lock 文件 composer.lock 是通过 composer 进行安装或更新依赖后生成的一个文件

    1.8K30

    YII2通过composer优化vendor

    在Yii2 中,vendor是composer下载的依赖库文件,官方的项目模板代码里只有其自己的项目文件,而其依赖的yii框架等类库,都记录在composer.json里面,只要安装好composer,...2 自己安装的Yii2的项目中,vendor中的包在composer.json 中找不到对应,而这些包大多是暂时不需要用到的,该如何remove,保持vendor最小化?...2.1 使用 composer remove 删除包 所删除的包必须在vendor文件夹下的composer.json中有记录,并且在删除包的同时,所有的包会重新安装一次。...目录下的代码版本是一致的,则Composer会什么也不做,composer.lock的目的就是让你安心在目前这个版本下工作,而不获取最新版本的包. composer update composer.lock文件中的包版本会被更新...如果组件已经使用composer引用到项目中,成为公共组件,需要谨慎使用composer命令,当然需要专人负责维护,不设置共享操作权限。

    1.5K40

    composer命令详解

    Composer是PHP的一个依赖管理工具,它允许你声明项目所依赖的库,并在你的项目中为你安装它们。...composer install:这个命令会从当前目录读取composer.json文件,处理依赖关系,并安装到vendor目录下。...当你首次在一个项目中安装依赖时,或者当你更新了composer.json文件后,通常会使用这个命令。composer update:这个命令会获取依赖的最新版本,并升级composer.lock文件。...composer require:这个命令用于添加新的依赖包到composer.json文件中并执行更新。...它会从现有的包中克隆一个项目,并安装其依赖。composer dump-autoload:当你在项目中添加新的类或目录映射时,这个命令会更新自动加载器。确保PHP能够正确地找到和加载你的类文件。

    46010

    Composer 使用使用详解

    我们可以在项目中声明所依赖的外部工具库,Composer 会帮你安装这些依赖的库文件,有了它,我们就可以很轻松的使用一个命令将其他人的优秀代码引用到我们的项目中来。...2.composer update 该命令会根据composer.json配置文件中包依赖以及相应的版本,更新包的版本,但是该命令会将所有的包都更新到最新版本,在实际的项目中需要谨慎使用,尤其是在生产环境上面...3.composer require 第1点中,我们讲到了如何去根据composer.json配置文件中的包依赖配置,安装对应的包。该命令可以不需要根据配置文件,而是去手动安装一个包。...安装完之后,对应的依赖配置会自动添加在composer.json配置文件中。...配置文件中的包依赖会自动删除,无需我们手动操作。

    3.4K30

    PHP-Laravel目录结构分析

    factories:存放一些工厂模式需要用的一些文件; migrations:迁移,存放的是迁移文件(创建/删除/修改数据表操作的类文件); seeds:播种、种子,存放的是种子(填充器)文件(模拟向数据表中写入数据的操作类...app:保存用户上传文件的路径; framework:框架自带的文件存储目录; logs:框架的日志文件存储位置; (9)vendor目录,主要是存放第三方的类库文件,laravel思想主要是共同的开发...config目录里面的文件配置内容一般都是读取该文件里面的配置信息(config里面的配置项的值基本都是来自.env文件)。 ?...执行命令: #php artisan 需要执行的指令 要求1:php必须添加环境变量,并且保证版本; 要求2:artisan必须存在命令行当前的工作路径下; (12)composer.json依赖包配置文件...声明当前需要的软件依赖,但是不能删除,composer需要使用。

    2K21

    Redis从认识安装到实现CURD(增删改查)

    ,它是一项全新的数据库理念,我们帖一组百度百科的解释 NoSQL,泛指非关系型的数据库。...随着互联网web2.0网站的兴起,传统的关系数据库在处理web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,出现了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展...同时不需要经过SQL层解析,性能非常高 无耦合性,易扩展 在SQL中,一个正在使用的数据是不允许删除的,但NoSQL却可以操作 NoSQL可以替代SQL吗?...,而我们常见的MySQL和Oracle等SQL数据库会将数据存储到硬盘中,凡事都是有利有弊,虽然内存数据库读写速度要比在硬盘中读写的数据库快的多,但是却出现了一个很麻烦的问题,也就是说,当 Redis...服务器重启或者宕机后,内存中的数据会全部丢失,为了解决这个问题,Redis提供了一种持久化的技术,也就是将内存中的数据存储到硬盘中去,日后方便我们使用这些文件恢复数据库中的数据 RDB 方式 (默认方式

    59200

    私有 composer 包创建

    然后在项目的跟路径下新建composer.json文件(请自行将下面的注释去掉): { // 包的名字, 在之后其他项目引入`require`的时候,用的就是这个 "name": "hujingnb.../composer_demo", // 包的描述信息 "description": "composer test", // 包类型, 这里指定为 库 "type": "library...image-20200618212403956 Test.php 文件中简单调用了一下测试的方法(当然, 在真实的项目中也可以这样搞, 毕竟你的包写完也是需要测试的嘛): 目中引入私有包 另外建一个项目, 用来测试引入私有包. composer.json 如下(请自行删除注释): { "name": "root/composer_require_demo",...第二个项目的composer.json文件和第一个项目基本没什么区别嘛, 而且在 require 的时候, 使用的是"name"属性, 在第二个项目中也有"name", 那是不是意味着, 第二个项目也可以作为包被导入啊

    1.4K30

    Composer安装与配置

    Composer,作为PHP的依赖管理工具,极大地简化了PHP项目中第三方库的安装、更新与管理过程。...验证安装在终端中输入composer,若显示Composer的帮助信息,说明安装成功。...项目级配置在项目根目录下创建或编辑composer.json文件,定义项目依赖及自定义配置:json{ "name": "my/project", "description": "My PHP...三、Composer常用操作安装项目依赖在包含composer.json的项目目录下,运行:bashcomposer installComposer将解析composer.json,下载并安装所有指定的依赖项...更新项目依赖要更新所有依赖至最新兼容版本(遵循composer.json中的版本约束),运行:bashcomposer update若只想更新某个特定库,可指定库名:bashcomposer update

    1.6K10
    领券