在Slim PHP2.0中使用Composer软件包

在Slim PHP2.0中使用Composer软件包,php,composer-php,slim,Php,Composer Php,Slim,我正在尝试使用SlimPHP2.0、Composer和两个第三方软件包构建RESTAPI。我使用Composer通过在应用程序的根目录中创建Composer.json文件来安装Slim,其中包含以下内容: { "require": { "slim/slim": "2.*" } } 运行composer安装后,我具有以下结构: root/ vendor/ composer/ slim/ autoload.ph

我正在尝试使用SlimPHP2.0、Composer和两个第三方软件包构建RESTAPI。我使用Composer通过在应用程序的根目录中创建Composer.json文件来安装Slim,其中包含以下内容:

{
    "require": {
        "slim/slim": "2.*"
    }
}
运行composer安装后,我具有以下结构:

root/
    vendor/
        composer/
        slim/
        autoload.php
    composer.json
    composer.lock
    index.php
我想包括Valitron()库来进行验证,以及这个Bcrypt()库来散列用户的密码。因此,我在composer.json文件中添加了以下内容,使其看起来像这样:

{
    "require": {
        "slim/slim": "2.*",
        "vlucas/valitron": "dev-master",
        "openlss/func-bcrypt": "dev-master"
    }
}
在运行composer update之后,我得到了以下目录结构

root/
    vendor/
        composer/
        openlss/
        slim/
        vlucas/
        autoload.php
    composer.json
    composer.lock
    index.php
从这里开始,我不确定如何为我的应用程序设置自动加载。我有时看到自动加载类映射,有时看到psr-0。在这些第三方软件包之上,我将创建自己的模型以供使用。一个是处理连接到数据库的基本模型,然后每个表都有一个模型,我使用该模型操作所述表。因此,为了与users表交互,我将使用下面的UserModel.php文件。我的另一个问题是,我将如何“使用”这个文件中的Valitron和BCrypt文件?我会这样做吗:

<?php namespace Libraries;

use \Valitron;
use \BCrypt;

class UserModel extends BaseModel {

    // I want to use the Valitron class here along with the crypt file

}

Composer为
Composer.json
中指定的第三方库提供自动加载程序。看见您可以根据自己的需要定制自动加载器,它支持和类映射。有关更多详细信息,请参见。

我的意思是,实际上这很简单。如果希望自动加载这些类,则需要autoload.php

require 'vendor/autoload.php';
或者,您可以在
composer.json
中声明它

{
    "autoload": {
        "psr-0": {"Libraries": "vendor/open-lss"}
    }
}
这将允许您执行以下操作:

namespace Libraries\func-bcrypt

class bCrypt_class{

}
我相信你正试图实现这一目标