2012-06-12 36 views
5

Mage :: nhật ký hoạt động tốt cho tôi, ngoại trừ khi nói đến in thông tin mảng.Bản ghi Magento in nội dung mảng

Ví dụ, nếu tôi có một kết quả mảng $, và làm điều này:

Mage :: log ('[CartController: getDeliverLeadTime (quốc gia):'.. $ Result ')');

Trong file system.log của tôi, tôi chỉ nhận được: [CartController: getDeliverLeadTime ~ (quốc gia): Mảng)

* Tôi muốn nó để in các cấu trúc thực tế và nội dung của mảng, như một bình thường print_r sẽ làm. *

Nếu tôi làm một var_dump của mảng tôi nhận được không có gì, tức là [CartController: getDeliverLeadTime ~ (quốc gia):).

Nếu tôi làm một print_r tôi nhận được: [CartController: getDeliverLeadTime ~ (quốc gia): 1)

Đây là một chặn đối với tôi như tôi không thể gỡ lỗi những gì tôi cần - nếu có ai có thể rụng bất kỳ ánh sáng về cách để Magento thực sự in nội dung của mảng trong nhật ký, sẽ được đánh giá cao.

Tôi đọc trên alanstorm.com rằng nó có nghĩa là sẽ xảy ra theo mặc định, nhưng nó không phải cho tôi.

Cảm ơn Paul

Trả lời

14

Bạn phải trả lại print_r như là một chuỗi, vì vậy print_r($result, true) nên làm các trick.

+0

Max nhờ một triệu đồng cho điều đó! Hoạt động hoàn hảo, đó là một cứu trợ lớn. Tôi có thể đánh dấu câu hỏi là đã trả lời trong 7 phút, sẽ làm như vậy sau đó. Cảm ơn một lần nữa, Paul. – pokero

+0

@pokero đừng quên bỏ phiếu và chấp nhận câu trả lời nếu nó giúp bạn ra ngoài –

+0

Cảm ơn Anton, đã xong. – pokero

0

Có một cái nhìn vào mã bên dưới mã,

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

kiểm tra tập tin test.log trong var/log thư mục.

1

Thử

$array = array('ID' => 1, 'NAME' => 'Amaresh', 'EMAIL' => '[email protected]'); 

Mage::log($array); 

Output

2015-09-18T06:44:24+00:00 DEBUG (7): Array 
(
    [ID] => 1 
    [NAME] => Amaresh 
    [EMAIL] => [email protected] 
) 
Các vấn đề liên quan