我正在使用 PHP 创建一个文件,然后使用 PHP 读取文件中写入的数据。一旦它全部创建在变量中,我就会将其回显给 JS。问题在于,文件的下一个空白行以某种方式被保存到变量中。这会在我在 JS 中使用该数据的任何地方创建一个“未定义”。关于如何消除 JS 中的空格/未定义有什么想法吗?问题可能出在 PHP 中,有没有办法告诉他们 PHP 如果下一行为空,则不读取下一行?提前致谢。
PHP 和回显到 JS
<?php
try {
$openInputData = fopen("../Data/IncomeData.txt", r) or die("Unable to open file.");
$rawInputData = fread($openInputData,filesize("../Data/IncomeData.txt"));
fclose($openInputData);
$inputData = $rawInputData;
}
catch (Exception $e) {
$errCatch = "$e";
}
?>
<!--Echo's the PHP file data to a JS variable-->
<script type="text/javascript">
var inputData = <?php echo(json_encode($inputData))?>;
document.onload(readFile(inputData));
</script>
JS 数据分割函数。
function readFile(inputData)
{
for(var x=0; x<inputData.length; x++){
var data = inputData.split("\n");
var dataSplit = data[x].split("\t");
var dataDate = dataSplit[0];
var dataFrequency = dataSplit[1];
var dataAmount = dataSplit[2];
inOutTable(dataAmount, dataDate);
}
incomeStatus(dataAmount);
}
最佳答案
如果您的脚本回显正确的数据,请尝试在 php echo 语句周围添加单引号 像这样
var inputData = '<?php echo(json_encode($inputData))?>';
关于javascript - 从文件读取数据到JS时得到 "undefined",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46137221/