2012-08-09 36 views
5

Tôi không chắc chắn lý do tại sao, nhưng xdebug không làm nổi bật var_dump(). Nhưng cấu hình có vẻ ổn. Không có lý do tại sao ... Bất cứ đề nghị?Xdebug không hoạt động với var_dump()

Đây là phpinfo() của tôi; http://pastebin.com/A45dqnWN

cộng với thậm chí xdebug_var_dump() không làm nổi bật bất kỳ thứ gì. Nó hoạt động, nhưng trông giống như var_dump bình thường().

Trả lời

16

Tôi thấy tùy chọn "xdebug.default_enable Tắt" trong bạn php_info(). Tôi cũng đã nhận thấy rằng trong các phiên bản cuối cùng của EasyPHP tùy chọn này bị tắt. Vì vậy, bật tính năng này bằng cách thiết lập dòng này trong php.ini:

xdebug.default_enable=1 

Tiếp theo là chỉ hoạt động thông thường mà vô hiệu hóa var_dump và các lỗi khác trong đầu ra HTML hoàn toàn (không trường hợp của bạn, nhưng có lẽ hữu ích cho những người khác):

html_errors = On 
+3

Xin cảm ơn, chỉ phát hiện ra rằng html_errors bị lỗi quá lâu vì chúng đã bị tắt theo mặc định trong php.ini của tôi. Big tahnks cho bạn, upvote –

+0

Cũng đảm bảo 'xdebug.overload_var_dump' là 1 hoặc 2. Nếu được đặt thành 0, nó sẽ không thay thế php mặc định' var_dump' – fyrye

0

Đối với php 7.0.2 và Xdebug 2.4.0

xdebug.default_enable=1 

+

html_errors = On 

Vẫn không tô màu đầu ra xdebug_var_dump().

nhưng bản vá này khắc phục được sự cố của tôi. Nó chỉ áp dụng cho xdebug.c và xdebug_var_dump(). Tôi nghĩ rằng họ đã thực hiện một sai lầm rằng xdebug_var_dump chỉ hoạt động nếu nó cần phải được chức năng quá tải.

@@ -2191,11 +2191,6 @@ 
    int  i, len; 
    char *val; 

- if (!XG(overload_var_dump)) { 
-  XG(orig_var_dump_func)(INTERNAL_FUNCTION_PARAM_PASSTHRU); 
-  return; 
- } 
- 
    argc = ZEND_NUM_ARGS(); 

#if PHP_VERSION_ID >= 70000 
Các vấn đề liên quan