Zend_Ldap_Node_RootDse(日本語) ベンダー固有のサブクラス全てで下記のメソッドが利用可能です。 Zend_Ldap_Node_RootDse は、 名前により属性にアクセスするための __get() 及び __isset() マジック・プロパティー・アクセッサを含みます。 それらはそれぞれ、 Zend_Ldap_Node_RootDse::getAttribute() 及び Zend_Ldap_Node_RootDse::existsAttribute() を代理します。 __set() 及び __unset() も実装されます。 しかし、 RootDSE ノードで認められない変更次第では BadMethodCallException をスローします。 さらに、属性に配列のようにアクセスするために クラスは ArrayAccess を実装します。 offsetSet() 及び offsetUnset() も 明白な理由に起因する BadMethodCallException をスローします。 Zend_Ldap_Node_RootDse API メソッド 説明 Zend_Ldap_Dn getDn() Zend_Ldap_Dn として現行ノードの DN を取得 string getDnString(string $caseFold) 文字列として現行ノードの DN を取得 array getDnArray(string $caseFold) 配列として現行ノードの DN を取得 string getRdnString(string $caseFold) 文字列として現行ノードの RDN を取得 array getRdnArray(string $caseFold) 配列として現行ノードの RDN を取得 array getObjectClass() ノードの objectClass を返します string toString() 現行ノードの DN を返します。 Zend_Ldap_Dn::getDnString() の代理です string __toString() 文字列表現にキャストします。 Zend_Ldap_Dn::toString() の代理です array toArray(boolean $includeSystemAttributes) 現行ノードの配列表現を返します。 もし $includeSystemAttributesFALSE (既定値は TRUE) なら、システム固有の属性は配列から除去されます。 Zend_Ldap_Node_RootDse::getAttributes() とは異なり、 結果の配列には キー 'dn' をもつ DN を含みます。 string toJson(boolean $includeSystemAttributes) Zend_Ldap_Node_RootDse::toArray() を用いて 現行ノードの JSON 表現を返します。 array getData(boolean $includeSystemAttributes) ノードの属性を返します。 配列は属性全てをその内部フォーマットに含みます。(変換無し) boolean existsAttribute(string $name, boolean $emptyExists) 与えられた属性が存在するかどうかチェックします。 もし $emptyExistsFALSE なら、 空の属性 (array() のみを含む) は、 FALSE を返す、存在しないものとして扱われます。 もし $emptyExistsTRUE なら、 空の属性は TRUE を返す、存在するものとして扱われます。 この場合、属性の名前がキーの集合に欠落している場合のみ、 メソッドは FALSE を返します。 boolean attributeHasValue(string $name, mixed|array $value) 与えられた値が属性に存在するかチェックします。 $value 内の値全てが属性に現れる場合のみ、 メソッドは TRUE を返します。 比較は厳格に行なわれます。(データ型を考慮します) integer count() ノードの属性数を返します。 Countable を実装します。 mixed getAttribute(string $name, integer|null $index) LDAP 属性を取得します。データ変換は Zend_Ldap_Attribute::getAttribute() を使って適用されます。 array getAttributes(boolean $includeSystemAttributes) ノードの属性全てを取得します。もし $includeSystemAttributesFALSE なら、 (既定は TRUE) システム固有の属性は配列から除去されます。 array|integer getDateTimeAttribute(string $name, integer|null $index) LDAP の日付/時刻属性を取得します。データ変換は Zend_Ldap_Attribute::getDateTimeAttribute() を使って適用されます。 Zend_Ldap_Node_RootDse reload(Zend_Ldap $ldap) 与えられた LDAP サーバから現行ノードの属性を再読み込みします。 Zend_Ldap_Node_RootDse create(Zend_Ldap $ldap) RootDSE を生成するファクトリー・メソッド array getNamingContexts() namingContexts を取得 string|null getSubschemaSubentry() subschemaSubentry を取得 boolean supportsVersion(string|int|array $versions) その LDAP のバージョンがサポートされるかどうか判定します boolean supportsSaslMechanism(string|array $mechlist) sasl 機構がサポートされるかどうか判定します integer getServerType() サーバの種類を取得します。(翻訳者挿入:下記のいずれかを)返します。 Zend_Ldap_Node_RootDse::SERVER_TYPE_GENERIC 未知の LDAP サーバ用 Zend_Ldap_Node_RootDse::SERVER_TYPE_OPENLDAP OpenLDAP サーバ用 Zend_Ldap_Node_RootDse::SERVER_TYPE_ACTIVEDIRECTORY Microsoft ActiveDirectory サーバ用 Zend_Ldap_Node_RootDse::SERVER_TYPE_EDIRECTORY Novell eDirectory サーバ用 Zend_Ldap_Dn getSchemaDn() スキーマ DN を返します
OpenLDAP さらに、上記の共通メソッドが Zend_Ldap_Node_RootDse_OpenLdap のインスタンスに適用されます。 OpenLDAP RootDSE の属性についての情報は LDAP Operational Attributes and Objects を参照してください。 Zend_Ldap_Node_RootDse_OpenLdap API メソッド 説明 integer getServerType() サーバの種類を取得します。 Zend_Ldap_Node_RootDse::SERVER_TYPE_OPENLDAP を返します string|null getConfigContext() configContext を取得 string|null getMonitorContext() monitorContext を取得 boolean supportsControl(string|array $oids) その制御がサポートされるかどうか判定します boolean supportsExtension(string|array $oids) そのエクステンションがサポートされるかどうか判定します boolean supportsFeature(string|array $oids) そのフィーチャーがサポートされるかどうか判定します
ActiveDirectory さらに、上記の共通メソッドが Zend_Ldap_Node_RootDse_ActiveDirectory のインスタンスに適用されます。 Microsoft ActiveDirectory RootDSE の属性についての情報は RootDSE を参照してください。 Zend_Ldap_Node_RootDse_ActiveDirectory API メソッド 説明 integer getServerType() サーバの種類を取得します。 Zend_Ldap_Node_RootDse::SERVER_TYPE_ACTIVEDIRECTORY を返します string|null getConfigurationNamingContext() configurationNamingContext を取得 string|null getCurrentTime() currentTime を取得 string|null getDefaultNamingContext() defaultNamingContext を取得 string|null getDnsHostName() dnsHostName を取得 string|null getDomainControllerFunctionality() domainControllerFunctionality を取得 string|null getDomainFunctionality() domainFunctionality を取得 string|null getDsServiceName() dsServiceName を取得 string|null getForestFunctionality() forestFunctionality を取得 string|null getHighestCommittedUSN() highestCommittedUSN を取得 string|null getIsGlobalCatalogReady() isGlobalCatalogReady を取得 string|null getIsSynchronized() isSynchronized を取得 string|null getLdapServiceName() ldapServiceName を取得 string|null getRootDomainNamingContext() rootDomainNamingContext を取得 string|null getSchemaNamingContext() schemaNamingContext を取得 string|null getServerName() serverName を取得 boolean supportsCapability(string|array $oids) その機能がサポートされるかどうか判定します boolean supportsControl(string|array $oids) その制御がサポートされるかどうか判定します boolean supportsPolicy(string|array $policies) そのバージョンがサポートされるかどうか判定します
eDirectory さらに、上記の共通メソッドが Zend_Ldap_Node_RootDse_eDirectory のインスタンスに適用されます。 Novell eDirectory RootDSE の属性についての情報は Getting Information about the LDAP Server を参照してください。 Zend_Ldap_Node_RootDse_eDirectory API メソッド 説明 integer getServerType() サーバの種類を取得します。 Zend_Ldap_Node_RootDse::SERVER_TYPE_EDIRECTORY を返します。 boolean supportsExtension(string|array $oids) そのエクステンションがサポートされるかどうか判定します string|null getVendorName() vendorName を取得 string|null getVendorVersion() vendorVersion を取得 string|null getDsaName() dsaName を取得 string|null getStatisticsErrors() サーバ統計 "errors" を取得 string|null getStatisticsSecurityErrors() サーバ統計 "securityErrors" を取得 string|null getStatisticsChainings() サーバ統計 "chainings" を取得 string|null getStatisticsReferralsReturned() サーバ統計 "referralsReturned" を取得 string|null getStatisticsExtendedOps() サーバ統計 "extendedOps" を取得 string|null getStatisticsAbandonOps() サーバ統計 "abandonOps" を取得 string|null getStatisticsWholeSubtreeSearchOps() サーバ統計 "wholeSubtreeSearchOps" を取得