2017-10-25 12 views
0

私は、アクティブなディレクトリへのldap呼び出しの結果を解析しています。セキュリティグループ内のすべてのユーザーを取得しようとしています。結果は以下のとおりです:ldapクエリ結果を解析するためのきれいな方法

$res = [member] => Array 
      (
       [count] => 2 
       [0] => CN=User 1,OU=SomeOU,DC=someDC,DC= someDC2 
       [1] => CN=User 2,OU=SomeOU,DC= someDC,DC= someDC2 
      ) 

結果の名前を取得するクリーナーの方法はありますか? (すなわち、ユーザー1、ユーザー2)

  foreach ($res['member'] as $k => $v){ 
      $exp = explode("=",$v); 
      $exp = explode(",",$exp[1]); 
      $name = $exp[0]; 
      echo $name."\n"; 
     } 
+0

は多分[ldap_explode_dn](http://php.net/manual/en/function.ldap-explode-dn.php)またはそれの兄弟のいずれか。 – FirstOne

+0

提供されている解決策はありますか? – mega6382

答えて

1

ない、それは、これを行うために、より明確な方法ですが、あなたはpreg_match機能を使用できるようにしてください。

foreach($member as $key => $value) { 
    $matches = []; 
    if (preg_match('/^CN=(.*?),OU/', $member, $matches)) { 
     echo "$matches[1]\n"; 
    } 
} 
関連する問題