oscarjg/ladybug-bundle

Ladybug库(简单且可扩展的PHP Dumper)的Symfony2扩展包

安装: 206

依赖者: 0

建议者: 0

安全: 0

星标: 1

关注者: 1

分支: 49

类型:symfony-bundle

v2.0.0 2016-06-14 15:54 UTC

This package is not auto-updated.

Last update: 2024-09-14 19:04:11 UTC


README

Build Status Latest Stable Version Total Downloads Latest Unstable Version

此扩展包为Symfony2项目提供了一个简单且可扩展的var_dump/print_r替代方案,适用于控制器或Twig模板。例如,使用此扩展包可以实现以下功能

<?php
    class UserController extends Controller
    {
        public function userAction($username) {
            ladybug_dump($username); // or just ld($username)
        }
    }
{{ user.username|ladybug_dump }}

得到以下结果

安装

步骤 1: Composer

将以下行添加到composer.json文件中

{
    "require": {
        "raulfraile/ladybug-bundle": "~1.0"
    }
}

为了在项目中实际安装Ladybug,下载composer二进制文件并运行它

wget http://getcomposer.org/composer.phar
# or
curl -O http://getcomposer.org/composer.phar

php composer.phar install

步骤 2: 启用扩展包

最后,在内核中启用扩展包

<?php
// app/AppKernel.php

public function registerBundles()
{
    $bundles = array(
        // ...
        new RaulFraile\Bundle\LadybugBundle\RaulFraileLadybugBundle(),
    );
}

示例

可以转储任何变量,包括数组、对象和资源

转储数组

<?php
    $var = array(1, 2, 3);
    ladybug_dump($var)

转储对象

<?php
    ladybug_dump($this->getRequest())

同样可以使用Twig过滤器ladybug_dump实现

助手函数

以下5个助手函数可以在任何控制器中使用

ladybug_dump($var1[, $var2[, ...]]):转储一个或多个变量

ladybug_dump_die($var1[, $var2[, ...]]):转储一个或多个变量并终止当前脚本

ladybug_dump_return($format, $var1[, $var2[, ...]]):转储一个或多个变量并返回以下任一格式的转储

  • yml:以YAML格式返回转储
  • json:以JSON格式返回转储
  • xml:以XML格式返回转储
  • php:以PHP数组格式返回转储

ladybug_dump_ini([$extension]):转储所有配置选项

ladybug_dump_ext():转储已加载的扩展

如果您不使用这些函数名,还有一些快捷方式

ld($var1[, $var2[, ...]]):ladybug_dump的快捷方式

ldd($var1[, $var2[, ...]]):ladybug_dump_die的快捷方式

ldr($format, $var1[, $var2[, ...]]):ladybug_return的快捷方式

ladybug_dump可以在Twig模板中使用。

Symfony性能分析器集成

您可以使用Ladybug记录器而不是在HTML文档中打印出转储树,并在Symfony性能分析器的标签中查看结果

要使用Ladybug记录器,从DIC中获取ladybug服务,并调用log方法

<?php
class TestController
{
    public function testAction()
    {
        $var = 1;
        $this->get('ladybug')->log($var);
    }

API参考

Ladybug自动检测Symfony、Doctrine、Twig、Silex和其他类,并将它们链接到官方文档。

配置

您可以直接在config.yml文件中配置Ladybug库。以下是默认值

raul_fraile_ladybug:
    theme: modern # select the theme: base, modern or custom themes
    expanded: false # true to expand all the variables tree by default
    silenced: false # true to ignore all ladybug calls

致谢

许可

LadybugBundle在MIT许可下发布。有关详细信息,请参阅捆绑的LICENSE文件。