我在服务器上有一个包含10行文本的txt文件。有时会重写文本文件,并使用“\ r \ n”获取新行。我的问题显示我想在javascript变量中加载行。我这样做,但这只适用于数字或文件的最后一行,因为它s not using the breakline tag: var x = '<?php echo $file[0]; ?>';
I
试图警告(x)但它不起作用....(仅在我工作时才工作读完最后一行)
任何想法?
答案 0 :(得分:3)
我不确定我是否完全理解这个问题,但您应该能够使用json_encode()
来适当地转义数据:
var x = <?php echo json_encode($file[0], JSON_HEX_TAG); ?>;
正如其他人所说,您可以trim()
数据删除尾随空格/换行符。除此之外,你仍然应该使用json_encode()
,否则它仍然可以打破javascript字符串(例如通过发送带引号的字符串)。
答案 1 :(得分:0)
您想要trim()
:
var x = '<?php echo trim($file[0]); ?>';
但是,如果您阅读file()
,可以trim()
$values = array_map("trim", file('input-file.txt'));
,然后继续做你正在做的事情:
var x = <?php echo json_encode($file[0]); ?>;
如果有人决定使用这种方法在变量中包含单引号,您可能会考虑会发生什么。
编辑:然后您可以按照其他答案中的建议添加array_map()
:
{{1}}
答案 2 :(得分:0)
谢谢大家!我在artlung和Richard JP Le Guen的帮助下解决了这个问题:
var x = <?php rtrim($file[0]); ?>