2014-02-22 80 views
0

使用作曲家包我想建立使用超薄PHP 2.0,作曲一個REST API,和幾個第三方軟件包。我用作曲家在我的應用程序的根具有下列創建composer.json文件來安裝修身:搭配修身PHP 2.0

{ 
    "require": { 
     "slim/slim": "2.*" 
    } 
} 

後我跑了作曲家安裝我有以下結構:

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" 
    } 
} 

後我跑了作曲家更新我得到了下面的目錄結構。

root/ 
    vendor/ 
     composer/ 
     openlss/ 
     slim/ 
     vlucas/ 
     autoload.php 
    composer.json 
    composer.lock 
    index.php 

從這裏,我不知道如何爲我的應用程序設置自動加載。我有時會看到autoload classmap,有時會看到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開發人員的必備條件,所以我試圖強迫自己學習它。

回答

0

我的意思是,這在現實中很簡單。如果你想這些類被自動加載,然後要求autoload.php

require 'vendor/autoload.php'; 

或者,composer.json你可以聲明它。

{ 
    "autoload": { 
     "psr-0": {"Libraries": "vendor/open-lss"} 
    } 
} 

這將允許你這樣做:

namespace Libraries\func-bcrypt 

class bCrypt_class{ 

} 

這是什麼,我相信你正試圖實現