将PHP数组转换为HTML Textarea

时间:2013-01-04 03:48:58

标签: php html

我试图将内爆的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的错误是什么?

3 个答案:

答案 0 :(得分:7)

删除内部空间:

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

答案 1 :(得分:4)

你的输出中还有一些额外的空格,这里是它的来源:

enter image description here

答案 2 :(得分:0)

由于<textarea>代码不会忽略空格,因此您拥有的新行和标签会搞乱它。基本上,只需将标签移动到以下内容:

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