Damper

Her hata ayıklama geliştiricisi, herhangi bir değişkenin tüm içeriğini ayrıntılı olarak listeleyen var_dump işlevi ile iyi bir arkadaştır. Ne yazık ki, çıktısı HTML biçimlendirmesi içermez ve dökümü tek bir HTML kodu satırına çıkarır, bağlam kaçışından bahsetmeye bile gerek yoktur. var_dump adresini daha kullanışlı bir işlevle değiştirmek gerekir. İşte dump() tam olarak budur.

$arr = [10, 20.2, true, null, 'hello'];

dump($arr);
// veya Debugger::dump($arr);

çıktıyı üretir:

Varsayılan açık temayı koyu olarak değiştirebilirsiniz:

Debugger::$dumpTheme = 'dark';

Ayrıca yuvalama derinliğini Debugger::$maxDepth ve görüntülenen dizelerin uzunluğunu Debugger::$maxLength ile değiştirebilirsiniz. Doğal olarak, daha düşük değerler Tracy görüntülemeyi hızlandırır.

Debugger::$maxDepth = 2; // varsayılan: 3
Debugger::$maxLength = 50; // varsayılan: 150

dump() işlevi başka yararlı bilgiler de görüntüleyebilir. Tracy\Dumper::LOCATION_SOURCE işlevin çağrıldığı dosyanın yolunu içeren bir araç ipucu ekler. Tracy\Dumper::LOCATION_LINK dosyaya bir bağlantı ekler. Tracy\Dumper::LOCATION_CLASS dökümü alınan her nesneye, nesnenin sınıfının tanımlandığı dosyanın yolunu içeren bir araç ipucu ekler. Tüm bu sabitler dump() çağrılmadan önce Debugger::$showLocation değişkeninde ayarlanabilir. | operatörünü kullanarak birden fazla değeri aynı anda ayarlayabilirsiniz.

Debugger::$showLocation = Tracy\Dumper::LOCATION_SOURCE; // dump() işlevinin çağrıldığı yerin yolunu gösterir
Debugger::$showLocation = Tracy\Dumper::LOCATION_CLASS | Tracy\Dumper::LOCATION_LINK; // Hem sınıflara giden yolları hem de dump() işlevinin çağrıldığı yere giden bağlantıyı gösterir
Debugger::$showLocation = false; // Ek konum bilgilerini gizler
Debugger::$showLocation = true; // Tüm ek konum bilgilerini gösterir

dump() için çok kullanışlı bir alternatif dumpe() (yani dump and exit) ve bdump(). Bu, Tracy Bar'daki değişkenleri dökmemizi sağlar. Bu kullanışlıdır, çünkü dökümler çıktıyı karıştırmaz ve ayrıca döküme bir başlık ekleyebiliriz.

bdump([2, 4, 6, 8], 'even numbers up to ten');
bdump([1, 3, 5, 7, 9], 'odd numbers up to ten');