1

任何人都知道如何将 stdClass 值分配给变量?

我有一个 stdClass 对象,当我使用 打印它时var_dump($userdetails->emailaddress),它确实将值打印为 String(31)"asdas.@fsdf.com";

但是当我尝试将对象值分配给变量时,可以说:

$to = $userdetails->emailaddress; 

$to值变为 NULL ...

任何人都可以帮忙吗?

4

3 回答 3

5

听起来你做错了什么,因为

$obj = new StdClass;
$obj->email = 'foo@example.com';
$to = $obj->email;
var_dump($to); // string(15) "foo@example.com"

注意 PHP 中的变量和对象成员是区分大小写的(不像函数和方法),所以

$to = $obj->eMail;
var_dump($to); // NULL

但是,在这种情况下,您还会收到 PHP 通知

Notice: Undefined property: stdClass::$eMail

在开发机器上启用error_reporting(-1)PHP.ini 指令是一种很好的做法。display_errorsdisplay_startup_errors


因为是CW。随意使用此空间以获得进一步的调试提示

于 2010-08-09T10:40:21.503 回答
0

我认为没有错/阻止将值从 stdClass 分配给变量。请检查代码的拼写。

于 2010-08-09T10:39:56.870 回答
0

var 是否公开?

如果课程是这样的:

class Example
{
    public $emailaddress;

    public function example()
    {
        #do something
    }  

}

然后我不明白为什么会有问题。

于 2010-08-09T10:40:25.200 回答