Kodları lütfen aşağıdaki butonları kullanarak renklendirin. Örnek: <php> echo "Selam Dünya"; </php>
Yardım
karakter kaldı

PHP Debug

Netbeans ile php kodlarımı debug etmek istiyorum ama x-debug ile ilgili uyarılar alıyorum. Ek dosyada ekran görüntüsüne bakabilirsiniz.Biraz araştırma yaptım galiba xdebug ve phpunit kurmam gerekiyormuş ya da ben yanlış araştırmışım :) . Kısacası Debug etmek için neler yapmam gerektiğini açıklayabilirseniz sevinirim ... İyi çalışmalar

Ekli Dosyalar

+0
-0
Cevaba KatılıyorumKatılmıyorum
Cevap Yaz Yorum Yaz Arşivime Ekle Takip Et

Doğru Cevap

  • 1
    madpoet adlı üyenin fotoğrafı
    10 yıl önce yazılmış
    83 cevap - 0 soru
    Öncelikle phpinfo'yu açıp xdebug yüklenmiş mi ona bakmalısın.
    Find'la xdebug diye aratınca bi tablo çıkması lazım. Eskiden powered by zend engine 2 yazan yerde de çıkıyodu sanki ama şimdi baktığımda orada göremedim, aşağılarda bi tablo var sadece.

    Eğer çıkmamışsa extension'ı yükleyemedin demektir. Dikkat etmen gerekenler:

    1. WAMP'a birden fazla PHP yüklenebilir o yüzden sadece tray'deki wamp ikonuna tıklayıp oradan tıkladığınız php.ini'yi edit edin. Sonra yine oradan restart edin.

    2. PHP'nin derlendiği versiyon ve kütüphaneye uygun xdebug dll'ini çekmeniz lazım. Benim phpinfo'da PHP Extension Build TS, VC6 diyo ve Thread Safety = enabled mesela. TS: Thread Safe, VC6 da visual C++ 6 ile derlenmiş demek. PHP versiyonum da php5.3.1, o yüzden ben nts (non-thread safe demek) olmayan vc6 5.3 versiyonu için olanı çektim.

    3. WAMP'ın bazı php versiyonlarında muhtelif sorunlar yaşadım, birinde pear çalışmadı birinde bilmemne oldu hatırlamıyorum o yüzden en son 5.3.1'i kurdum şimdi çalışıyor. O yüzden en son wamp'ın sitesinden apache ve php'nin son versiyonlarını indirip kurmanı önerebilirim.


    Bu arada trajikomik bi şekilde xdebug çok bug'lı çalışıyor haberin olsun :)
    • madpoet adlı üyenin fotoğrafı madpoet
      Ha bu arada php.ini'de dll'e full path vermişim ben:

      zend_extension="D:/wamp/bin/php/php5.3.1/ext/php_xdebug.dll" xdebug.remote_enable=1 xdebug.remote_host=localhost xdebug.remote_port=9000 xdebug.remote_handler=dbgp
      10 yıl önce yazılmış
    • Alexander adlı üyenin fotoğrafı Alexander
      Bütün dediklerinizi yaptım ama olmadı maalesef ... neyse böyle idare edeceğiz artık :D...
      Bu arada phpunit nedir ne işe yarar biraz bahsederseniz sevinirm :)
      10 yıl önce yazılmış
    • madpoet adlı üyenin fotoğrafı madpoet
      Onun debug'la uzaktan yakından alakası yok.
      Yazdığınız class'larla ilgili testler yazıyosunuz. Mesela x metoduna a ve b parametrelerini gösterirsem geriye integer dönmeli, b parametresini girmezsem exception throw etmeli vs. şeklinde testler yazıyosunuz.

      Sonra testleri çalıştırdığınızda programın en azından planlandığı gibi çalışmasını garanti ediyorsunuz. Özellikle ilerleyen aşamalarda bir yeri yaparken başka yerleri bozmadığınızdan emin olmak için. Bir de tabii class'ları test edilebilir şeklinde yazmanız gerekeceği için kod da daha derli toplu oluyor.
      10 yıl önce yazılmış
    • Alexander adlı üyenin fotoğrafı Alexander
      Açıklamalarınız için teşekkürler.
      10 yıl önce yazılmış

Cevaplar

  • halidaltuner adlı üyenin fotoğrafı
    10 yıl önce yazılmış
    144 cevap - 4 soru
    Şu dosyayı indir; http://xdebug.org/files/php_xdebug-2.1.0-5.2-vc6.dll

    php.ini içerisine şu satırları ekle, servisleri yeniden başlat.
    [xdebug]
    zend_extension=/php5.2/lib/php/extensions/no-debug-non-zts-20060613/php_xdebug-2.1.0-5.2-vc6.dll
    xdebug.remote_enable=1
    xdebug.remote_host=localhost
    xdebug.remote_port=9000
    xdebug.remote_autostart=1

    Not: zend_extension satırı halihazırda php.ini içerisinde vardır. kendine göre o satırı düzenlemen gerekiyor.
    • Alexander adlı üyenin fotoğrafı Alexander
      Dediklerinizi aynen uyguladım. Ama değişen bişey olmadı :( . Bu arada wamp kullanıyorum . zend_extension yolunu da bendekine göre düzenledim ama aynı hatayı aldım yine .
      10 yıl önce yazılmış
    • halidaltuner adlı üyenin fotoğrafı halidaltuner
      Netbeans içinde de xdebug'un path'inin gösterilmesi gerekiyordu sanırım.
      10 yıl önce yazılmış
    • Alexander adlı üyenin fotoğrafı Alexander
      Path gösterdim ama değişen bişey yok.
      10 yıl önce yazılmış
    • halidaltuner adlı üyenin fotoğrafı halidaltuner
      Servisleri yeniden başlattınız değil mi? Pc'yi restartlayın istereniz.
      10 yıl önce yazılmış
    • Alexander adlı üyenin fotoğrafı Alexander
      reset de atıım pc ye :D olmadı maalesef :)
      10 yıl önce yazılmış