PHP hata ayıklama için bir araç tasarımı

3 Cevap php

EDIT: Like I said, Xdebug type responses are not really that helpful here. I've added some more info below:

Ben küçük bir PHP ayıklama çözümü yazarken planlıyorum ve ben başlamadan önce bazı fikirler için yığın taşması yoklamak istiyorum. Hedef, bir PHP tabanlı web uygulaması hata ayıklama basitleştirmek için.

The tool should be able to plug into an existing web app and to display and traverse a PHP backtrace. I'd probably implement it in PHP (and potentially with the help of some javascript). Some php functions that come to mind: set_error_handler() and debug_backtrace().

Genellikle fikir bir dev kutu üzerinde kök gerektirir, ve / veya xdebug gibi sunucu tarafı debugger'lar ile ilişkili diğer havai herhangi etmez yapılandırmak kolay hafif bir hata ayıklama aracıdır.

Tartışmaya açık bazı şeyler şunlar olabilir:

  1. Bu tür bir şey yapan bir GUI için işlevsellik / özelliklere sahip güzel.
  2. Ben gelişmekte olabilir başka bir uygulama içine bu aracı takarken hususlar nelerdir? (Hata ayıklama amaçlı.
  3. GUI ve uygulaması arasındaki entegrasyon Ben hata ayıklama istiyorum nasıl fikirler.

Ben gibi, bu zaten bu aptalca, yapılmış ve neden sadece xdebug / echo hata ayıklama kullanmak değil, aynı zamanda diğer önerilere açığım. (Tamam, belki gerçekten son iki, ancak yanıt kalitesine bağlı olarak bunu düşünebilirsiniz :).

3 Cevap

Sen FirePHP Firefox'un Kundakçı için bir eklenti bakmak olabilir. Güya o hata ayıklama ve izleme için kullanılan olabilir. Ben yanlış olabilir - henüz kullanmış değil.

Bu (bir yöntem dönen örneğin) belirtilen yürütme noktalarda bir logger diziler veya nesneleri dökümü edebilmek için gerçekten güzel olurdu:

$your_tool->log_this_var("var_name" => "var", "log_at" => array("return_from" => "aMethod"));

Ve sonra onları görmek:

foreach($var_log['saved_states'] as $key => $val): print_r($val); 

Herkes bu bir yorumlama yerine birlikte yanıtlayan emin niçin xdebug.org. Kullanmak için orada diğer çerçeveler ile tekerleği yeniden hiçbir nokta yok. Kendi oluşturmaya ay harcayabilirsiniz.

GUI ihtiyaçlarını karşılamak için, 3rd party clients ile mümkündür.

Ben yalnız gitmeden önce o veya Zend bir deneyin vermek istiyorum. Ya bir olasılıkla ne gerek% 95 yapacağız. :)