要自定义 PHP 的 var_dump
输出,您可以创建一个自定义函数来实现所需的格式
function custom_var_dump($variable, $label = null) {
// 设置标签
if ($label === null) {
$label = 'custom_var_dump';
}
// 获取变量类型
$type = gettype($variable);
// 根据变量类型进行处理
switch ($type) {
case 'array':
$output = sprintf('%s: %s (%d)', $label, $type, count($variable));
break;
case 'object':
$output = sprintf('%s: %s (%s)', $label, $type, get_class($variable));
break;
default:
$output = sprintf('%s: %s', $label, $type);
}
// 添加值
ob_start();
var_dump($variable);
$content = ob_get_contents();
ob_end_clean();
// 移除第一行和最后一行
$lines = explode(PHP_EOL, $content);
array_shift($lines);
array_pop($lines);
// 合并剩余行
$value = implode(PHP_EOL, $lines);
// 输出自定义格式
echo sprintf("%s:\n%s\n", $output, $value);
}
// 示例用法
$array = ['foo' => 'bar', 'baz' => 'qux'];
custom_var_dump($array, 'My Custom Array');
这个示例中的 custom_var_dump
函数会接收一个变量和一个可选的标签参数。然后,它会根据变量的类型生成一个自定义的输出格式。在这个例子中,我们只是简单地显示了变量类型、长度(对于数组)或类名(对于对象),但您可以根据需要调整输出格式。
请注意,这个示例仅用于演示目的。您可以根据需要修改此函数以满足您的特定需求。