lonnieezell / codeigniter-forensics
CodeIgniter 的一个高性能、可自定义的 Profiler 替代品。
Requires
This package is auto-updated.
Last update: 2022-04-08 04:28:02 UTC
README
Forensics 是一个高性能、完全可自定义的 CodeIgniter Profiler 替代品。
新增功能?
Forensics 为标准 Profiler 添加了一些功能,可以使开发者调试时的工作更加轻松。
- Profiler 输出现在可以完全自定义样式。如果您之前阅读过 Profiler 类的评论,EllisLab 开发者已经说了很久,希望能够做到这一点。祝贺,已经实现了。
- 输出现在还包括所有包含在您的 CodeIgniter 应用程序中的文件列表,以及它们的位置(相对于您的 FCPATH)。
- 输出还具有通过新的控制台类记录项目和跟踪内存的能力。
- 任何发送到视图的变量都将在条中显示。
- Forensics 现在可以详细查看通过 Illuminate Database 运行的查询。
默认外观和一些附加功能受到了 ParticleTree 的 PHP Quick Profiler 的极大启发。
安装
Forensics 旨在作为 Spark 使用。然而,最佳安装方式是使用 Composer。
在应用程序的根目录(与应用程序和 spark 文件夹并列)中创建一个 composer.json
文件。在新的文件中添加以下文本
{
"require": {
"lonnieezell/codeigniter-forensics": "dev-master"
}
}
得益于 compwright/composer-installers
的魔法,文件会被传输到您的应用程序的 third_party
文件夹。在您的应用程序中,您首先需要加载新安装的包。这可以通过自动加载器轻松完成,也可以通过控制器中的环境检查来实现最大优化。
$autoload['packages'] = array(APPPATH.'third_party/codeigniter-forensics');
然后,就像平常一样启用 Profiler。
$this->output->enable_profiler(true);
Forensics 日志记录
除了 CI 的 Profiler 提供的正常信息外,您现在还可以使用 Forensics Profiler 的两个新日志命令。
Console::log($data)
此函数接受任何数据类型,并使用 print_r() 创建一个漂亮的、易于阅读的变量输出。这对于记录脚本执行的位置或输出数组、stdObject 到新的 'console' 非常方便。
Console::log_memory($variable, $name)
log_memory 函数有两个用途。
-
当没有传入参数时,它将记录脚本当前的内存使用量。这非常适合监视循环并检查内存泄漏。
-
如果您传入 $variable 和 $name 参数,将会将变量使用的内存量输出到控制台。
为了使用这些函数中的任何一个,您必须在使用之前确保已经加载了 Console 库。
Illuminate 数据库查询
除了 CodeIgniter 数据库查询之外,Forensics 还可以显示 Illuminate Database 模型或 Eloqeunt 查询构建器运行的任何查询信息。此功能默认禁用。要启用此功能,请修改 config/profiler.php
中的 eloquent
配置设置。如果您在项目中使用 Illuminate Database,请注意此功能需要 Capsule\Manager。
其他技巧
您可以通过修改 profiler_template 视图顶部的 $bar_location
变量来更改分析栏的位置,选择以下位置之一
- 右上角
- 左上角
- 左下角
- 右下角
- 顶部
- 底部