繁体   English   中英

如何在PHP中正确打印对象内容?

[英]How can I correctly print the object content in PHP?

我在PHP中绝对是新手,而且在Laravel框架中,我有以下问题。

我在做:

    $attributes = array(
        'id' => $dettagliLogin->id,
        'username' => $dettagliLogin->email,
        'name' => $dettagliLogin->userName,
    );

    $user = new GenericUser($attributes);

    \Log::info('USER: '.(var_dump(($user))));

最后一行在哪里:

\Log::info('USER: '.(var_dump(($user))));

应该将$ user对象的内容写入日志文件。

问题是,在我的日志文件中,我获得以下输出:

[2017-01-30 10:25:19] local.INFO: USER:  

就是因为这个对象是空的,但我认为它不是空的,因为随后使用了它。

为什么? 如何正确打印对象内容?

您想使用var_export 这是文档

\Log::info('USER: ' . var_export($user, true));

将第二个参数设置为true ,这会将提供的变量的内容导出为可分配的字符串,而不是将其直接打印到页面上。

编辑 :我也整理了一下您的代码,因为您用花括号有点疯了!

var_dump 没有任何返回值 ,它直接输出到stdOut。 这就是为什么您在那里看不到任何东西的原因。

使用带有第二个参数true var_export将内容保存在字符串中。

也许您的'('

尝试:

\Log::info('USER: '.var_dump($user));

如果不起作用,则将var_dump强制为字符串,但通常不需要这样做。

希望它能对您有所帮助:)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM