0

我正在用 PHP 进行一些 LDAP 开发,并且在 PHP 中遇到了某种可能是新手的值分配。

我的问题特定于 LDAP_MODIFY,但可能是一般问题。我正在尝试更新一个属性,但以下属性给了我一个未找到属性的错误:

$email = 'Whitegon024@thedomain.org';
$attributes   = array( "userPrincipleName" => "$email"); 

但以下是成功的:

$attributes = array( "userPrincipalName" => 'Whitegon024@thedomain.org') ; 

如果我做print_r($attributes);任何一个,我会得到:

Array
(
    [userPrincipleName] => Whitegon024@thedomain.org
)

有人有线索吗?我敢肯定这是非常简单的事情。

4

3 回答 3

5

您在第一次尝试中将 principal 拼错为原则……这与您分配变量的方式无关。

澄清 -attribute not found并不意味着它看到索引的空值userPrincipalName- LDAP 服务器说索引userPrincipleName本身不作为主体 LDAP 记录的属性存在。

于 2012-11-08T16:58:32.910 回答
0

PHP 正在为变量解析双引号字符串。如果您不想解析,请使用单引号字符串。此外,即使您使用的是双引号字符串,也请{$var}使用$var. 因此,您还可以解析数组{$someArray['someIndex']}

于 2012-11-08T16:59:09.620 回答
0

更改$attributes = array( "userPrincipleName" => "$email");$attributes = array( "userPrincipleName" => $email);

于 2012-11-08T16:59:53.390 回答