1

我正在尝试将一个内爆的 PHP 数组回显到一个文本框中。该数组是通过 file() 函数读取文件来创建的,如下所示:

$bad_phrases=file('bad_phrases.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);

然后在脚本中使用该数组,我需要在 HTML 中再次输出它:

<textarea>
    <?php
    echo implode("\n", $bad_phrases);
    ?>
</textarea>

但是,当我尝试这样做时,我在 textarea 中得到了一些奇怪的格式。结果如下:

"       adsfsf
asdfsd
sddsds  "

但是,当在浏览器上查看 bad_phrases.txt 时,它显示得很好:

adsfsf
asdfsd
sddsds

var_dump显示数组很好:

var_dump($bad_phrases);
array(3) { [0]=> string(6) "adsfsf" [1]=> string(6) "asdfsd" [2]=> string(6) "sddsds" }

那么我在 Implode 上做错了什么?

4

3 回答 3

9

去掉里面的空格:

<textarea><?php echo implode("\n", $bad_phrases);?></textarea>
于 2013-01-04T03:51:50.887 回答
4

您的输出中有一些额外的空白,这是它的来源:

在此处输入图像描述

于 2013-01-04T03:52:24.643 回答
0

由于<textarea>代码不会忽略空格,因此您拥有的新行和制表符会将其弄乱。基本上,只需将标签移动到这样的位置:

<textarea><?php
    echo implode("\n", $bad_phrases);
?></textarea>
于 2013-01-04T03:56:04.020 回答