mikield/php-ref

PHP 5.3+ 的一个更友好的 print_r/var_dump 替代品

此软件包的官方仓库似乎已不存在,因此该软件包已被冻结。

1.0.0 2015-04-01 00:30 UTC

This package is auto-updated.

Last update: 2021-01-29 05:00:16 UTC


README

需要编辑

REF,或 r() 是 PHP 的 print_r / var_dump 函数的一个更友好的替代品。

DEMO

需求

  • (服务器) PHP 5.3+ (5.4+ 显示更多信息)
  • (客户端) 任何浏览器,当然不包括 IE 8 及以下版本

使用 Composer 安装

将 REF 添加到您的 composer.json

{
    "require": {
        "digitalnature/php-ref": "dev-master"
    }
}

现在运行以下命令以让 composer 下载软件包

$ php composer.phar update digitalnature/php-ref

Composer 会将软件包安装到 vendor/digitalnature 目录。

用法

基本示例

// include the class (not needed if project runs with Composer because it's auto-loaded)
require '/full/path/to/ref.php';

// display info about defined classes
r(get_declared_classes());

// display info about global variables
r($GLOBALS);

要在文本模式下打印,您可以使用 rt() 函数

rt($var);

要在信息打印后终止脚本,请使用按位非运算符

~r($var);   // html
~rt($var);  // text

使用错误控制运算符 (@) 可以返回信息

$output = @r($var);   // html
$output = @rt($var);  // text

键盘快捷键(必须启用 JavaScript)

  • X - 收起/展开所有级别

要修改全局配置,请调用 ref::config()

// example: initially expand first 3 levels
ref::config('expLvl', 3);

当前可用的选项及其默认值

选项 默认值 描述
'expLvl' 1 最初展开的级别(仅限 HTML 模式)。负值将展开所有级别
'maxDepth' 6 最大深度(《0》禁用);请注意,禁用它或设置一个高值,如果涉及大量数据,可能会生成一个 100+ MB 的页面
'showIteratorContents' FALSE 显示迭代器数据(键和值)
'showResourceInfo' TRUE 显示有关资源的附加信息
'showMethods' TRUE 显示对象上的方法和参数信息
'showPrivateMembers' FALSE 包含私有属性和方法
'showStringMatches' TRUE 执行并显示日期、文件、JSON 字符串、序列化数据、正则表达式模式等字符串匹配(慢)
'formatters' array() 自定义/外部格式化程序(作为关联数组:格式 => 类名)
'shortcutFunc' array('r', 'rt') 用于检测输入表达式的快捷函数。如果它们是命名空间,则必须包含命名空间(不支持方法)
'stylePath' '{:dir}/ref.css' 自定义样式表的本地路径(仅限 HTML);FALSE 表示不包含 CSS。
'scriptPath' '{:dir}/ref.js' 自定义 JavaScript 的本地路径(仅限 HTML);FALSE 表示不包含 JavaScript(提示/切换/键盘快捷键需要 JavaScript)
'showUrls' TRUE 获取有关 URL 的信息。将其设置为 FALSE 可以提高性能(需要 showStringMatches 为 TRUE)

类似项目

待办事项

  • 如果不存在,则从父或原型继承DocBlock注释
  • 重构“bubbles”(适用于文本模式)
  • 正确缩进多行字符串(文本模式)
  • 将分隔符标记移动到 ::before 和 ::after 伪元素(HTML模式)

许可协议

https://open-source.org.cn/licenses/mit-license.html a