有没有办法用SQL语法中的"IN"语句查询LDAP?我的意思是提供一个值列表,而不是一次又一次地重复字段名称.
让我解释:)
我有一个类似于的查询:
(|(name=joe)(name=bill)(name=mark)(name=john)(name=rob))
Run Code Online (Sandbox Code Playgroud)
有没有办法缩小此查询以获得这样的内容:
(name=joe,bill,mark,john,rob)
Run Code Online (Sandbox Code Playgroud)
谢谢
我需要从这样的LDAP连接字符串中提取信息:
ldap://uid=adminuser,dc=example,c=com:secret@ldap.example.com/dc=basePath,dc=example,c=com
Run Code Online (Sandbox Code Playgroud)
我想使用一个正则表达式,它将为我提取每个标记并将其放在一个数组中.我尝试了一些正则表达式,我得到的最好的是:
/(\w+)\:\/\/(([a-zA-Z0-9]+)(:([^\:\@]+))?@)?([^\/]+)((\/[^#]*)?(#(.*))?)/
Run Code Online (Sandbox Code Playgroud)
但不幸的是,当我在PHP中执行它时,我得到以下结果:
Array
(
[0] => ldap://uid=adminuser,dc=example,c=com:secret@ldap.example.com/dc=basePath,dc=example,c=com
[1] => ldap
[2] =>
[3] =>
[4] =>
[5] =>
[6] => uid=adminuser,dc=example,c=com:secret@ldap.example.com
[7] => /dc=basePath,dc=example,c=com
[8] => /dc=basePath,dc=example,c=com
)
Run Code Online (Sandbox Code Playgroud)
任何人都可以帮助我,以便我能正确提取连接字符串的每个部分吗?
谢谢