cg/kint-bundle 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

cg/kint-bundle

Composer 安装命令:

composer require cg/kint-bundle

包简介

This bundle lets you use the Kint function in your Twig templates. Kint is a print_r() replacement which produces a structured, collapsible and escaped output

README 文档

README

This bundle lets you use the Kint library in your Twig templates.

This bundle adds a new Twig kint() function which is a replacement for the Twig dump() function. Extremely easy to use but very powerful. Some of its features:

  • Much more elegant and readable output - structured, collapsible and escaped.
  • The name of the twig variable is displayed.
  • Accepts any number of parameters in one call and groups them for you to see what was dumped in different iterations.
  • Handles recursive variables.
  • Much more information is displayed about the variable in many cases:
    • static properties of the dumped objects class;
    • specific types of data are recognized and displayed in a custom way (eg. JSON, XML strings);
    • if a resource variable is of an opened file, the file name is displayed and much more...
  • Complex variables are dumped with a fixed nested depth so that it doesn't hang up your browser for enormous objects.

Installation

Using Composer (for Symfony 2.1)

Add the Kint Bundle in your composer.json file:

{
    "require": {
        "cg/kint-bundle": "dev-master"
    }
}

Now tell composer to download the bundle by running the command:

$ php composer.phar update Cg/KintBundle

Composer will install the bundle and Kint in your project's vendor directory.

Using Deps (for Symfony 2.0)

1- Add this to your Deps file:

[Kint]
    git=http://github.com/raveren/kint.git
    target=raveren/kint

[KintBundle]
    git=http://github.com/barelon/CgKintBundle.git
    target=bundles/Cg/KintBundle

2- run ./bin/vendors install

3- Add the Cg namespace to your autoloader:

// app/autoload.php

$loader->registerNamespaces(array(
    // ...
    'Cg' => __DIR__.'/../vendor/bundles',
));

4- Add a classmap to your autoloader so that it can load the Kint class. Add this line at the beginning of the app/autoload.php file

use Symfony\Component\ClassLoader\MapClassLoader;

And add this code snippet at the end of that file:

// Create map autoloader
$mapLoader = new MapClassLoader(array(
    'Kint' => __DIR__.'/../vendor/raveren/kint/Kint.class.php',
));

$mapLoader->register();

Update your AppKernel (for both Symfony 2.1 and 2.0)

Finally, enable the bundle in the kernel:

// app/AppKernel.php

public function registerBundles()
{
    $bundles = array(
        // ...
        new Cg\KintBundle\CgKintBundle(),
    );
}

Usage

Within any Twig template use

{{kint(var1,var2,...)}}

This will dump on screen the values of these Twig variables. They will be shown in a beautiful format, with a collapsable hierarchical view. Click on any variable name to open or collapse one level or click the + and - signs to open or collapse all levels.

If you don´t include any variable names in your kint() call, like this:

{{kint()}}

then the whole Twig Context with all its variables will be dumped.

Configuration

In your app/config/config.yml file you can include

cg_kint:
    enabled:          true
    nesting_depth:    5
    string_length:    60
  • The enabled parameter defines if kint output is enabled or not. Set this to false and Kint will not output anything, you probably want to set this to false for the prod environment.
  • The nesting_depth parameter defines the maximum depth of nesting in object/array variables that Kint will show. Use 0 for infinite depth. Kint will recognize recursion in variables and will not hang your browser.
  • The string_length parameter defines the maximum lenth of strings shown. If a string is longer than that it will be shown truncated with a link to see it fully.

All these parameters are optional. If you don´t include them they will take the default values shown above.

License

This bundle is under the MIT license. See the complete license in the bundle:

Resources/meta/LICENSE

About

KintBundle has been created by Carlos Granados.

Kint was created by Rokas Šleinius.

See also the list of contributors.

Reporting an issue or a feature request

Issues and feature requests are tracked in the Github issue tracker.

统计信息

  • 总下载量: 125.78k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 22
  • 点击次数: 0
  • 依赖项目数: 1
  • 推荐数: 0

GitHub 信息

  • Stars: 22
  • Watchers: 5
  • Forks: 11
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2012-08-10

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固