# Kint - debugging helper for PHP developers
[![Total Downloads](https://poser.pugx.org/raveren/kint/downloads.png)](https://packagist.org/packages/raveren/kint)
> **New version** v1.0.0 is released with more than two years of active development - changes are too numerous to list, but there's CLI output and literally hundreds of improvements and additions.
![Screenshot](http://raveren.github.com/kint/img/preview.png)
## What am I looking at?
At first glance Kint is just a pretty replacement for **[var_dump()](http://php.net/manual/en/function.var-dump.php)**, **[print_r()](http://php.net/manual/en/function.print-r.php)** and **[debug_backtrace()](http://php.net/manual/en/function.debug-backtrace.php)**.
However, it's much, *much* more than that. Even the excellent `xdebug` var_dump improvements don't come close - you will eventually wonder how you developed without it.
Just to list some of the most useful features:
* The **variable name and place in code** where Kint was called from is displayed;
* You can **disable all Kint output easily and on the fly** - so you can even debug live systems without anyone knowing (even though you know you shouldn't be doing that!:).
* **CLI is detected** and formatted for automatically (but everything can be overridden on the fly) - if your setup supports it, the output is colored too:
![Kint CLI output](http://i.imgur.com/6B9MCLw.png)
* **Debug backtraces** are finally fully readable, actually informative and a pleasure to the eye.
* Kint has been **in active development for more than six years** and is shipped with [Drupal 8](https://www.drupal.org/) by default as part of its devel suite. You can trust it not being abandoned or getting left behind in features.
* Variable content is **displayed in the most informative way** - and you *never, ever* miss anything! Kint guarantees you see every piece of physically available information about everything you are dumping*;
* <sup>in some cases, the content is truncated where it would otherwise be too large to view anyway - but the user is always made aware of that;</sup>
* Some variable content types have an alternative display - for example you will be able see `JSON` in its raw form - but also as an associative array:
![Kint displays data intelligently](http://i.imgur.com/9P57Ror.png)
There are more than ten custom variable type displays inbuilt and more are added periodically.
----
## Installation and Usage
One of the main goals of Kint is to be **zero setup**.
[Download the archive](https://github.com/raveren/kint/releases/download/1.0.0/kint.zip) and simply
```php
<?php
require '/kint/Kint.class.php';
```
**Or, if you use Composer:**
```json
"require": {
"raveren/kint": "1.0.x-dev"
}
```
Or just run `composer require raveren/kint`
**That's it, you can now use Kint to debug your code:**
```php
########## DUMP VARIABLE ###########################
Kint::dump($GLOBALS, $_SERVER); // pass any number of parameters
// or simply use d() as a shorthand:
d($_SERVER);
########## DEBUG BACKTRACE #########################
Kint::trace();
// or via shorthand:
d(1);
############# BASIC OUTPUT #########################
# this will show a basic javascript-free display
s($GLOBALS);
######### WHITESPACE FORMATTED OUTPUT ##############
# this will be garbled if viewed in browser as it is whitespace-formatted only
~d($GLOBALS); // just prepend with the tilde
########## MISCELLANEOUS ###########################
# this will disable kint completely
Kint::enabled(false);
ddd('Get off my lawn!'); // no effect
Kint::enabled(true);
ddd( 'this line will stop the execution flow because Kint was just re-enabled above!' );
```
Note, that Kint *does* have configuration (like themes and IDE integration!), but it's in need of being rewritten, so I'm not documenting it yet.
## Tips & Tricks
* Kint is enabled by default, call `Kint::enabled(false);` to turn its funcionality completely off. The *best practice* is to enable Kint in DEVELOPMENT environment only (or for example `Kint::enabled($_SERVER['REMOTE_ADDR'] === '<your IP>');`) - so even if you accidentally leave a dump in production, no one will know.
* `sd()` and `ddd()` are shorthands for `s();die;` and `d();die;` respectively.
* **Important:** The older shorthand `dd()` is deprecated due to compatibility issues and will eventually be removed. Use the analogous `ddd()` instead.
* When looking at Kint output, press <kbd>D</kbd> on the keyboard and you will be able to traverse the tree with arrows and tab keys - and expand/collapse nodes with space or enter.
* Double clicking the `[+]` sign in the output will expand/collapse ALL nodes; triple clicking big blocks of text will select it all.
* Clicking the tiny arrows on the right of the output open it in a separate window where you can keep it for comparison.
* To catch output from Kint just assign it to a variable<sup>beta</sup>
```php
$o = Kint::dump($GLOBALS);
// yes, the assignment is automatically detected, and $o
// now holds whatever was going to be printed otherwise.
// it also supports modifiers (read on) for the variable:
~$o = Kint::dump($GLOBALS); // this output will be in whitespace
```
* There are a couple of real-time modifiers you can use:
* `~d($var)` this call will output in plain text format.
* `+d($var)` will disregard depth level limits and output everything (careful, this can hang your browser on huge objects)
* `!d($var)` will show expanded rich output.
* `-d($var)` will attempt to `ob_clean` the previous output so if you're dumping something inside a HTML page, you will still see Kint output.
You can combine modifiers too: `~+d($var)`
* To force a specific dump output type just pass it to the `Kint::enabled()` method. Available options are: `Kint::MODE_RICH` (default), `Kint::MODE_PLAIN`, `Kint::MODE_WHITESPACE` and `Kint::MODE_CLI`:
```php
Kint::enabled(Kint::MODE_WHITESPACE);
$kintOutput = Kint::dump($GLOBALS);
// now $kintOutput can be written to a text log file and
// be perfectly readable from there
```
* To change display theme, use `Kint::$theme = '<theme name>';` where available options are: `'original'` (default), `'solarized'`, `'solarized-dark'` and `'aante-light'`. Here's an (outdated) preview:
![Kint themes](http://raveren.github.io/kint/img/theme-preview.png)
* Kint also includes a naïve profiler you may find handy. It's for determining relatively which code blocks take longer than others:
```php
Kint::dump( microtime() ); // just pass microtime()
sleep( 1 );
Kint::dump( microtime(), 'after sleep(1)' );
sleep( 2 );
ddd( microtime(), 'final call, after sleep(2)' );
```
![Kint profiling feature](http://i.imgur.com/tmHUMW4.png)
----
[Visit the project page](http://raveren.github.com/kint/) for documentation, configuration, and more advanced usage examples.
### Author
**Rokas Šleinius** (Raveren)
### License
Licensed under the MIT License
没有合适的资源?快使用搜索试试~ 我知道了~
【WordPress插件】2022年最新版完整功能demo+插件v1.9.2.zip
共334个文件
php:122个
js:86个
css:27个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 109 浏览量
2022-04-15
02:06:43
上传
评论
收藏 4.81MB ZIP 举报
温馨提示
"【WordPress插件】2022年最新版完整功能demo+插件v1.9.2 WP Job Manager Field Editor Add-on WP作业管理器字段编辑器加载项" ---------- 泰森云每天更新发布最新WordPress主题、HTML主题、WordPress插件、shopify主题、opencart主题、PHP项目源码、安卓项目源码、ios项目源码,更有超10000个资源可供选择,如有需要请站内联系。
资源推荐
资源详情
资源评论
收起资源包目录
【WordPress插件】2022年最新版完整功能demo+插件v1.9.2.zip (334个子文件)
semantic.min.css 548KB
vendor.min.css 47KB
vendor.min.css 29KB
intlTelInput.min.css 18KB
airbnb.min.css 17KB
jmfe.min.css 16KB
material_orange.min.css 16KB
material_red.min.css 16KB
material_blue.min.css 16KB
material_green.min.css 16KB
confetti.min.css 16KB
light.min.css 16KB
dark.min.css 16KB
flatpickr.min.css 16KB
select2.min.css 15KB
plugins.min.css 13KB
aante-light.css 8KB
solarized-dark.css 6KB
solarized.css 6KB
original.css 5KB
magnific-popup.min.css 5KB
core.min.css 2KB
smylesv2.css 1KB
admin.css 1KB
dynamictax.min.css 746B
wordpress.css 406B
display.min.css 401B
icons.eot 162KB
icons.eot 140KB
fontawesome-webfont.eot 71KB
fontawesome-webfont.eot 71KB
fontawesome-webfont.eot 71KB
icons.eot 39KB
semantic.min.js 277KB
phoneutils.min.js 208KB
handlebars.min.js 74KB
select2.full.min.js 73KB
velocity.min.js 43KB
flatpickr.min.js 41KB
jmfe.min.js 40KB
beautify.min.js 33KB
vendor.min.js 33KB
vendor.min.js 31KB
intlTelInput.min.js 26KB
magnific-popup.min.js 20KB
conditionals.min.js 17KB
sortable.min.js 13KB
base.js 12KB
dynamictax.min.js 10KB
jquery.csv.min.js 9KB
admin-conditionals.min.js 8KB
smylesv2.js 6KB
kint.js 5KB
logic-backup.min.js 2KB
core.min.js 2KB
plugins.min.js 2KB
date.min.js 2KB
jquery.serialize-object.min.js 2KB
th.min.js 1KB
gr.min.js 1KB
bn.min.js 967B
term-checklist.min.js 962B
time.min.js 959B
my.min.js 958B
si.min.js 925B
checklist.min.js 888B
hi.min.js 855B
pa.min.js 847B
mk.min.js 824B
html5required.min.js 815B
et.min.js 813B
lt.min.js 807B
cy.min.js 805B
hu.min.js 766B
fa.min.js 754B
it.min.js 748B
uk.min.js 736B
cat.min.js 733B
ru.min.js 725B
date.min.js 678B
bg.min.js 675B
fi.min.js 650B
sr.min.js 648B
sv.min.js 642B
sl.min.js 641B
de.min.js 632B
nl.min.js 630B
ar.min.js 630B
vn.min.js 625B
fr.min.js 624B
he.min.js 623B
cs.min.js 613B
ro.min.js 610B
metaboxes.min.js 608B
es.min.js 607B
zh.min.js 598B
phone.min.js 597B
autocomplete.min.js 592B
pt.min.js 590B
id.min.js 589B
共 334 条
- 1
- 2
- 3
- 4
资源评论
Lee达森
- 粉丝: 988
- 资源: 1万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 【Unity HTTP 请求库】Best HTTP v3
- IT-办公-关键字-文本查找-office查找文本
- 投资充电桩源码 共享充电桩投资理财源码
- 毕业设计-基于paddle使用tinyyolo开发的人脸检测+人脸表情识别项目-项目实战-项目源码-优质项目.zip
- 毕业设计-基于OpenCV实现车牌识别系统-项目源码-优秀毕业设计分享.zip
- 海康威视web开发完整代码
- 自动标注工具AutoLabelImg
- 毕业设计-基于opencv的安卓平台人脸活体检测眨眼检测项目-项目实战-项目源码-优质项目.zip
- 岩石颗粒物检测、VOC、YOLO两种格式
- 毕业设计-基于Mediapipe检测人体3D骨架-基于KNN进行跌倒检测项目-项目实战-项目源码-优质项目.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功