在Slim PHP2.0中使用Composer软件包
我正在尝试使用SlimPHP2.0、Composer和两个第三方软件包构建RESTAPI。我使用Composer通过在应用程序的根目录中创建Composer.json文件来安装Slim,其中包含以下内容:在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
{
"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{
}
我相信你正试图实现这一目标