📜  php 漂亮的打印 - PHP (1)

📅  最后修改于: 2023-12-03 15:33:38.896000             🧑  作者: Mango

PHP 漂亮的打印

在 PHP 应用程序开发中,我们往往需要输出调试信息或者错误信息,以便于快速找到问题所在,这时候就需要打印出正确格式的信息。本文介绍几种可以让你的打印信息更加漂亮的方法。

var_dump() 函数

var_dump() 函数是 PHP 自带的调试函数之一,可以将变量以易于阅读的结构形式输出。在打印数组、对象等复杂类型数据时特别方便。

$arr = array(1, 2, "test");

// 打印数组
var_dump($arr);

$obj = new stdClass();
$obj->name = "Tom";
$obj->age = 20;

// 打印对象
var_dump($obj);

输出结果

array(3) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  string(4) "test"
}
object(stdClass)#1 (2) {
  ["name"]=>
  string(3) "Tom"
  ["age"]=>
  int(20)
}
print_r() 函数

和 var_dump() 一样,print_r() 函数也可以用来打印复杂类型数据,但是输出的格式比较简洁,适合快速查看数组或对象的结构。

$arr = array(1, 2, "test");

// 打印数组
print_r($arr);

$obj = new stdClass();
$obj->name = "Tom";
$obj->age = 20;

// 打印对象
print_r($obj);

输出结果

Array
(
    [0] => 1
    [1] => 2
    [2] => test
)
stdClass Object
(
    [name] => Tom
    [age] => 20
)
var_export() 函数

var_export() 函数将变量或者表达式的返回值以 PHP 代码的形式输出,输出的结果可以直接放到脚本中使用。

$arr = array(1, 2, "test");

// 输出数组
echo var_export($arr, true);

$obj = new stdClass();
$obj->name = "Tom";
$obj->age = 20;

// 输出对象
echo var_export($obj, true);

输出结果

array (
  0 => 1,
  1 => 2,
  2 => 'test',
)
stdClass::__set_state(array(
   'name' => 'Tom',
   'age' => 20,
))
JSON 格式化

在 PHP 中,我们可以使用内置函数 json_encode() 将数组或对象转换成 JSON 格式,而再使用内置函数 json_decode() 将 JSON 格式的字符串解码成 PHP 数组或对象。

$arr = array(1, 2, "test");

// 输出 JSON 格式的数组
echo json_encode($arr, JSON_PRETTY_PRINT);

$obj = new stdClass();
$obj->name = "Tom";
$obj->age = 20;

// 输出 JSON 格式的对象
echo json_encode($obj, JSON_PRETTY_PRINT);

输出结果

[
    1,
    2,
    "test"
]
{
    "name": "Tom",
    "age": 20
}
PHP 标准格式化输出

在 PHP 中,我们可以使用内置函数 printf() 或者 sprintf() 来格式化输出字符串,这种方式不仅可以输出漂亮的文本,还可以指定输出的长度或者对齐方式等。

$name = "Tom";
$age = 20;

// 格式化输出
printf("my name is %s, my age is %d", $name, $age);

输出结果

my name is Tom, my age is 20

以上就是 PHP 漂亮的打印方式的介绍,希望对你有所帮助。