首页 > 解决方案 > 如何在多行源代码中显示 print_r 结果

问题描述

我有一个简单的 php 代码,它改变了数组中名称的顺序。

$arr = [
    "Meier, Peter",
    "Schulze, Monika",
    "Schmidt, Ursula",
    "Brosowski, Klaus",
];

foreach($arr as $name => $name2) 
{
    $vname = explode(", ", $name2); 
    $new = array_reverse($vname);
    $arr[$name] = implode(", ", $new); 
}

echo "<pre>".print_r($arr, true)."</pre>"; 

基本上我想编辑代码,源代码不是在一行中显示数组,而是在几行中(每个名字+姓氏一个),如下所示:

Array
(
    [0] => Peter, Meier
    [1] => Monika, Schulze
    [2] => Ursula, Schmidt
    [3] => Klaus, Brosowski
)

现在源代码显示 excelpt 相同的结果,但只有一行。是否可以通过这种方式调整 print_r 命令?

此致

编辑澄清:我的代码因此给出了我也在我的问题中发布的数组。在html源码中,同一个数组在一行[0] => Peter, Meier[1] => Monika, Schulze等。因此,我的结果的结构方式与源代码的结构方式之间存在差异。我想更改数组的源代码结构,使其看起来像实际结果。

标签: php

解决方案


您可以使用函数 nl2br() 将 print_r 中的 line_breaks 用于 html

echo nl2br(print_r($arr, true));

或者你建立一个 List 函数

echo '<ul>'.PHP_EOL;
foreach($arr as $name){
    echo "<li>{$name}</li>".PHP_EOL;
}
echo '</ul>'.PHP_EOL;

推荐阅读