5

Mage :: logは、配列情報の出力を除いて、私にとっては問題なく機能します。

たとえば、配列$ resultがあり、これを行う場合:

Mage :: log('[CartController:getDeliverLeadTime(country):'。$result。')');

私のsystem.logファイルでは、次のようになります:[CartController:getDeliverLeadTime〜(country):Array

*通常のprint_rと同じように、配列の実際の構造と内容を出力したい。*

配列のvar_dumpを実行すると、何も取得されません。つまり、[CartController:getDeliverLeadTime〜(country):)。

print_rを実行すると、次のようになります。[CartController:getDeliverLeadTime〜(country):1)

必要なことをデバッグできないので、これは私にとってブロッカーです-誰かがMagentoに実際にログの配列の内容を印刷させる方法に光を当てることができれば、大いにありがたいです。

alanstorm.comで、デフォルトで発生することを意図していると読みましたが、私にとってはそうではありません。

ありがとうポール

4

3 に答える 3

14

print_rを文字列として返す必要があるため、print_r($result, true)このトリックを実行する必要があります。

于 2012-06-12T09:30:32.700 に答える
2

それを試してみてください

$array = array('ID' => 1, 'NAME' => 'Amaresh', 'EMAIL' => 'example@gmail.com');

Mage::log($array);

出力

2015-09-18T06:44:24+00:00 DEBUG (7): Array
(
    [ID] => 1
    [NAME] => Amaresh
    [EMAIL] => example@gmail.com
)
于 2015-09-18T06:46:39.070 に答える
0

コードの下のコードを見てください、

$collection = Mage::getModel('catalog/product')->getCollection()
Mage::log("Query product: ".print_r($collection->getData(), true),null,'test.log');

フォルダ内のファイルtest.logを確認してvar/logください。

于 2013-01-30T09:17:16.390 に答える