【发布时间】:2014-02-23 02:11:43
【问题描述】:
我正在尝试使用 Slim PHP 2.0、Composer 和几个第三方包构建 REST API。我使用 Composer 通过在我的应用程序的根目录中创建一个 composer.json 文件来安装 Slim,其中包含以下内容:
{
"require": {
"slim/slim": "2.*"
}
}
运行 composer install 后,我有以下结构:
root/
vendor/
composer/
slim/
autoload.php
composer.json
composer.lock
index.php
我想包括 Valitron (https://packagist.org/packages/vlucas/valitron) 库和这个 Bcrypt (https://packagist.org/packages/openlss/func-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。在这些第三方包之上,我将创建自己的模型以供使用。一个是处理连接到数据库的基本模型,然后每个表都有一个模型,我用它来操作所述表。因此,为了与用户表交互,我将使用下面的 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,但是由于每个人都说它是 PHP 开发人员必须的,所以我试图强迫自己学习它。
【问题讨论】:
标签: php composer-php slim