Hata ayıklama PHP

5 Cevap php

Ben hata ayıklama XDebug kullanan ve bir süre için şimdi php projelerde kodu anlamak, ve bazen PHP içinde neler belirsiz oldu durumlar içine gelmiş oldum.

Bu XDebug ayarlamak veya i gerçek php yerleşik fonksiyonları içine iz böylece kadar gdb'yi mümkün mü?

5 Cevap

Eğer bir macosx, Solaris veya son freebsd sistemi kullanıyorsanız, bunu biraz DTrace atabilir. Bu "PHP yapıyor WTF?" Bu bütün çok sayıda için kullanışlı gelebilir anlar.

Ben xdebug internals, PHP kodu değil izleme içindir, şüpheliyim. Internals bug-free (ki besbelli bazen değil, ama bu xdebug kapsamı dışında bulunuyor) olduğu varsayılır.

Eğer yerleşik işlevleri ne bilmek istiyorsanız her zaman PHP kaynak bakabilirsiniz, ama bazen oldukça kıllı. Ben onların ne yapacağını bilmek istiyorum PHP kılavuzu dokümanlar her zaman beni yeterince hizmet etmiş.

Eğer hata ayıklama sembolleri ile derlenmiş php olması koşuluyla, C-düzey kodu için iz gdb'nin kullanabilirsiniz. Bir başlangıç ​​için buraya bakabilirsiniz:

http://derickrethans.nl/phps_segmentation_faults_gdbfu.php

Opcodes de içinde gözetleme için Zend motorunun çıkışını test etmek için bir yolu, size Derick Rethan's VLD (Vulcan Mantık Dissasembler) kullanabilirsiniz , which also appears to be on PECL. Note: sadece * nix sistemleri üzerinde çalışır (gereksinimleri için sitesine bakın).

Bu işlem kodları ayıklama bazı örnekleri, Understanding Opcodes ve How long is a piece of string? gibi eşyalarda, Sara Golemon's blog bulunabilir.

Olanak sağlayan büyük Google Chrome uzantısı PHP Console php library ile de var:

  • Chrome JavaScript konsolu & bildirim pop-up hataları ve duruma bakın.
  • Herhangi bir türü değişkeni dökümü.
  • Uzaktan PHP kodu çalıştırmak.
  • Erişim şifre koruyun.
  • Isteği ile grup konsol günlükleri.
  • Metin editörü satır: dosyayı hata atlamak.
  • Kopyalama hatası / debug verileri (test için) panoya.

Herkese tavsiye!