读取txt文件中的多行在php中不起作用
我正在尝试读取多行的 txt 文件并使用 console.log 对其进行记录,但遇到错误。该错误仅在尝试读取多行文件时仍然存在。如果 txt 文件只有一行,它可以完美运行并且 console.logs 该行。我曾尝试使用 fgets 方法和 file_get_contents 方法,但它们都产生相同的错误,即SyntaxError: Invalid or unexpected token. 我的代码有什么问题。任何帮助表示赞赏。提前致谢。
<?php
$file = fopen("test.txt","r");
$let = fgets($file); //Don't work
$let = file_get_contents("test.txt"); //Don't work
fclose($file);
?>
<script>
var val = "<?=$let?>";
console.log(val); //error: SyntaxError: Invalid or unexpected token
</script>
回答
返回的字符串fgets()将以换行符结尾,但 JavaScript 字符串文字不能包含换行符。此外,如果字符串包含双引号,则会导致语法错误,因为您将其用作 JavaScript 字符串分隔符。
用于json_encode()将字符串正确编码为 JavaScript 文字。
var val = <?=json_encode($let);?>;