php-extended / php-ldap-filter-object
A library that implements the php-ldap-filter-interface library
6.0.4
2023-08-21 18:17 UTC
Requires
Requires (Dev)
This package is auto-updated.
Last update: 2023-09-21 18:31:21 UTC
README
A library that implements the php-ldap-filter-interface library
Installation
The installation of this library is made via composer and the autoloading of all classes of this library is made through their autoloader.
- Download
composer.phar
from their website. - Then run the following command to install this library as dependency :
php composer.phar php-extended/php-ldap-filter-object ^6
Basic Usage
This library creates dn with the following constructor :
use PhpExtended\Ldap\LdapFilterNodeInterface;
use PhpExtended\Ldap\LdapFilterNodeValueInterface;
use PhpExtended\Ldap\LdapFilterNodeMulti;
use PhpExtended\Ldap\LdapFilterNodeNot;
use PhpExtended\Ldap\LdapFilterNodeValue;
$filter = new LdapFilterNodeMulti(LdapFilterNodeInterface::OP_OR, [
new LdapFilterNodeNot(new LdapFilterNodeValue(LdapFilterNodeValueInterface::CMP_APPROX, 'foo', 'bar')),
new LdapFilterNodeValue(LdapFilterNodeValueInterface::CMP_EQUALS, 'cn', 'foobar'),
new LdapFilterNodeValue(LdapFilterNodeValueInterface::CMP_EQUALS, 'uid', 'barbaz'),
]);
// gets "(|(!(foo~=bar))(cn=foobar)(uid=barbaz))"
To parse ldap filters, do :
use PhpExtended\Ldap\LdapFilterParser;
$parser = new LdapFilterParser();
$ldn = $parser->parseString('(&(objectClass=Person)(sn=John)(cn=Snow))');
// $ldn instanceof LdapFilterNodeMultiInterface AND node with
// three children which are each one of the nodes
License
MIT (See license file).