簡體   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