2016-05-17 67 views
3

我使用laravel 5.2和ADLDAP2庫LDAP驗證,我想從我的Active Directory中獲得的所有用戶,爲了這個,我想用這個方法:如何在mycontroller中獲取laravel 5.2 ADLDAP提供程序實例?

$results = $provider->search()->where('cn', '=', 'John Doe')->get(); 

,但我不知道燙得到LDAP提供程序的實例。

+0

您有權訪問您的廣告服務器嗎?請同時編輯您的標籤,laravel-5或laravel-5.2 – davejal

+0

我會猜測您正在使用類似於'adldap2/adldap2-laravel'的東西你確定你已經迷上了服務提供商和Fascade?如果沒有那些Laravel,不要將提供者注入系統。 –

回答

0

Adldap2的創建者。如果您使用的Adldap2-Laravel包,使用附帶的外觀:

use Adldap\Laravel\Facades\Adldap; 

$results = Adldap::getProvider('default')->search()->where('cn', '=', 'John Doe')->get(); 

// Or: 

$results = Adldap::getDefaultProvider()->search()->where('cn', '=', 'John Doe')->get(); 

// Or call `search()` directly and your default provider will be used: 

$results = Adldap::search()->where('cn', '=', 'John Doe')->get(); 

或者,你也可以解決它通過它的別名容器:

$ldap = app('adldap'); 

$ldap->search()->users()->get(); 

或它的界面:

$ldap = app(\Adldap\AdldapInterface::class); 

內的控制器的:

namespace App\Http\Controllers; 

use App\Http\Controller; 
use Adldap\Laravel\Facades\Adldap; 

class UserController extends Controller 
{ 
    /** 
    * Displays all LDAP users 
    * 
    * @return \Illuminate\Http\Response 
    */ 
    public function index() 
    { 
     $users = Adldap::search()->users()->get(); 

     return view('ldap.users', compact('users')); 
    } 
}