使用新的composer在Yii2 Project中安装库

时间:2016-01-04 09:33:08

标签: installation composer-php libraries yii2-advanced-app

我已经通过存档安装了Yii2 Advanced模板并且已经创建了我应用程序的一半,但现在我想安装一些可以通过composer安装的库,所以我也安装了composer,但是现在我该如何安装库?对于我使用该作曲家的yii2项目?

3 个答案:

答案 0 :(得分:1)

运行命令:

composer global require "fxp/composer-asset-plugin:~1.1.1"

从安装指南(http://www.yiiframework.com/doc-2.0/guide-start-installation.html#installing-via-composer)通过Composer获取bower和npm包,然后创建一个 composer.json 文件,这是一个来自干净的高级模板安装的示例:

{
    "name": "yiisoft/yii2-app-advanced",
    "description": "Yii 2 Advanced Application Template",
    "keywords": ["yii2", "framework", "advanced", "application template"],
    "homepage": "http://www.yiiframework.com/",
    "type": "project",
    "license": "BSD-3-Clause",
    "support": {
        "issues": "https://github.com/yiisoft/yii2/issues?state=open",
        "forum": "http://www.yiiframework.com/forum/",
        "wiki": "http://www.yiiframework.com/wiki/",
        "irc": "irc://irc.freenode.net/yii",
        "source": "https://github.com/yiisoft/yii2"
    },
    "minimum-stability": "dev",
    "prefer-stable" : true,
    "require": {
        "php": ">=5.4.0",
        "yiisoft/yii2": "*",
        "yiisoft/yii2-bootstrap": "*",
        "yiisoft/yii2-swiftmailer": "*",
    },
    "require-dev": {
        "yiisoft/yii2-codeception": "*",
        "yiisoft/yii2-debug": "*",
        "yiisoft/yii2-gii": "*",
        "yiisoft/yii2-faker": "*",
    },
    "config": {
        "process-timeout": 1800
    },
    "extra": {
        "asset-installer-paths": {
            "npm-asset-library": "vendor/npm",
            "bower-asset-library": "vendor/bower"
        }
    }
}

答案 1 :(得分:0)

enter image description here

我做你之前告诉我的事情,那好吗?它结束了吗?或者我必须做的任何步骤? 哪个文件可以检查我的yii文件是否已经与作曲家连接?

答案 2 :(得分:0)

使用Composer软件包 许多第三方库都是根据Composer软件包发布的。您可以通过以下两个简单步骤来安装这些库:

  1. 修改应用程序的 composer.json 文件并指定哪个文件 您要安装的Composer包。
  2. 运行 composer install 以安装指定的包。
  3. 使用已下载的库 如果库未作为Composer程序包发布,则应按照其安装说明进行安装。在大多数情况下,您需要手动下载发布文件并将其解压缩到 BasePath / vendor 目录中,其中 BasePath 表示应用程序的基本路径。

    如果库带有自己的类自动加载器,您可以将其安装在应用程序的入口脚本中。建议在包含 Yii.php 文件之前完成安装,以便Yii类自动加载器可以优先使用自动加载类。

    如果库不提供类自动加载器,但其类命名遵循PSR-4,则可以使用Yii类自动加载器自动加载类。您需要做的就是为其类中使用的每个根命名空间声明一个根别名。例如,假设您已在 vendor / foo / bar 目录中安装了库,并且库类位于 xyz 根命名空间下。您可以在应用程序配置中包含以下代码:

        [
        'aliases' => [
            '@xyz' => '@vendor/foo/bar',
        ],
    ]
    

    如果上述情况都不是这样,则库可能依赖于PHP包含路径配置来正确定位和包含类文件。只需按照其有关如何配置PHP包含路径的说明进行操作。

    在最糟糕的情况下,当库需要明确包含每个类文件时,您可以使用以下方法按需包含类:

    • 确定库包含哪些类。
    • 列出 Yii :: $ classMap 中的类和相应的文件路径 在应用程序的入口脚本中。例如,

      Yii :: $ classMap ['Class1'] ='path / to / Class1.php'; Yii :: $ classMap ['Class2'] ='path / to / Class2.php';

    更多参考信息可在此处找到:http://www.yiiframework.com/doc-2.0/guide-tutorial-yii-integration.html