Luthier CI 调试 Debug

栏目: PHP · 发布时间: 5年前

内容简介:实验功能我们已经努力使事情正常工作,但是可能会出现错误,导致和/或收取此功能所需的资产。如果您在使用过程中发生过事故,由于将Luthier CI与这个出色的工具集成在一起,您可以将

调试 Debug

实验功能

我们已经努力使事情正常工作,但是可能会出现错误,导致和/或收取此功能所需的资产。如果您在使用过程中发生过事故, 请通知我们。

内容 Contents

介绍 Introduction

由于将Luthier CI与这个出色的 工具 集成在一起,您可以将 PHP Debug Bar 添加到您的应用程序中。

激活 Activation

要激活此功能(默认情况下已禁用),请转到您的 application/config/hooks.php 文件并替换:

<?php
# application/config/hooks.php

defined('BASEPATH') OR exit('No direct script access allowed');

// (...)

$hook = Luthier\Hook::getHooks();

附:

<?php
# application/config/hooks.php

defined('BASEPATH') OR exit('No direct script access allowed');

// (...)

$hook = Luthier\Hook::getHooks(
    [
        'modules' => ['debug']
    ]
);

您应该在窗口底部看到调试栏:

Luthier CI 调试 Debug

调试消息 Debug messages

要添加调试消息,请使用该类的 log() 静态方法 Luthier\Debug :

# use Luthier\Debug;
Debug::log($variable, $type, $dataCollector);

$variable 要调试的变量在哪里,并且 $type 是消息的类型,可以是 'info' , 'warning''error' .

例:

<?php
# application/controllers/TestController.php

use Luthier\Debug;

defined('BASEPATH') OR exit('No direct script access allowed');

class TestController extends CI_Controller
{
    public function index()
    {
        Debug::log('Welcome to Luthier-CI ' . LUTHIER_CI_VERSION . '!');
        Debug::log('Hello world!','info');
        Debug::log('This is a warning, watch out!','warning');
        Debug::log('Oh snap! an error was occurred!','error');
        $this->load->view('welcome_message');
    }
}

结果如下:

Luthier CI 调试 Debug

可选 $dataCollector 参数是将存储消息的 data collector 的名称

Debug::log('Custom data collector','error','my_custom_data_collector');

如果需要存储要在下一个请求中显示的消息(例如,在提交表单后),请使用该 logFlash() 方法,其语法与 log() 静态方法相同:

Debug::logFlash('Hey! this will be available in the next request','info');

在生产环境中取消激活

如果将应用程序的环境设置 production 为此功能将自动禁用,并且将忽略任何调试代码

要求输出缓冲区中有数据

Luthier CI 在输出缓冲区中添加PHP Debug Bar代码,然后由 output CodeIgniter库处理并发送到浏览器。因此,必须至少使用一次函数 $this->load-> view() 或明确定义输出缓冲区才能工作。该 echo 语句不产生任何内部输出缓冲器。此外,使用函数停止执行脚本 dieexit 将阻止显示 PHP 调试栏。

添加您自己的数据收集器 ( Add your own data collectors )

可以添加自己的数据收集器并在其中存储消息。要将数据收集器添加到PHP Debug Bar实例,请使用 addCollector() static方法:

# use Luthier\Debug;
Debug::addCollector(new MyCollector());

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

深入浅出强化学习:原理入门

深入浅出强化学习:原理入门

郭宪、方勇纯 / 电子工业出版社 / 2018-1 / 79

《深入浅出强化学习:原理入门》用通俗易懂的语言深入浅出地介绍了强化学习的基本原理,覆盖了传统的强化学习基本方法和当前炙手可热的深度强化学习方法。开篇从最基本的马尔科夫决策过程入手,将强化学习问题纳入到严谨的数学框架中,接着阐述了解决此类问题最基本的方法——动态规划方法,并从中总结出解决强化学习问题的基本思路:交互迭代策略评估和策略改善。基于这个思路,分别介绍了基于值函数的强化学习方法和基于直接策略......一起来看看 《深入浅出强化学习:原理入门》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试