使用php获取文本文件并将字符串发送到javascript
好的,我想做的是创建一个javascript图像循环,但是首先我必须得到一个图像列表。在javascript中,无法直接获取此文本文件。。。但是它可以在php中完成,我目前正在使用php获取txt文件,但是javascript无法读取变量。如何使javascript能够读取此变量。这是我所拥有的使用php获取文本文件并将字符串发送到javascript,php,javascript,string,Php,Javascript,String,好的,我想做的是创建一个javascript图像循环,但是首先我必须得到一个图像列表。在javascript中,无法直接获取此文本文件。。。但是它可以在php中完成,我目前正在使用php获取txt文件,但是javascript无法读取变量。如何使javascript能够读取此变量。这是我所拥有的 <?php $file = "http://www.ssd.noaa.gov/goes/east/tatl/txtfiles/ft_names.txt"; //Path to your *.txt
<?php
$file = "http://www.ssd.noaa.gov/goes/east/tatl/txtfiles/ft_names.txt"; //Path to your *.txt file
$contents = file($file);
$string = implode($contents);
echo $string;
?>
<script type="text/javascript">
function prnt() {
var whatever = "<?= $string ?>";
alert(whatever);
}
</script>
函数prnt(){
var=”;
警惕(无论什么);
}
您可以使用echo或print在PHP中写入页面
var whatever = "<?php echo $string; ?>";
var=”;
不过,如果文件中有换行符,则需要删除这些换行符。让它更有趣一点:继续分割字段并使用JSON编码。它应该直接在javascript中读取,而不需要在客户端上调用JSON.parse()
<?php
$lines = file_get_contents('http://...');
$lines = explode("\n",trim($lines));
foreach ($lines as &$line) {
$line = preg_split('/,? /',$line);
}
$js = json_encode($lines);
?>
<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<script type="text/javascript">
var dar = <?php echo $js; ?>;
</script>
</body>
</html>
var-dar=;
您还应该考虑使用本地代理来缓存该文件的结果,如果您计划频繁运行该文件,特别是如果您要在某个公共Web服务器上服务它的话。将该文件本地存储为“noaa_data.txt”,并在cron作业上使用第二个脚本(12小时左右):
您现在得到的输出是什么?我假设您正在某处调用prnt()?是否启用了短标记?文本的内容是什么?是否有换行符等等?@Doug nothing,没有警告框,但是如果我在php中只创建一个正则变量,例如$string=“Ok”,并且不向其中添加任何内容,它就可以正常工作。你确定你的$string不是空的,并且在php阶段没有出现问题吗?这对我也不起作用。顺便说一句,我没有说明这一点,但我不想将字符串打印到页面上。那么您想要什么?JavaScript无法直接从PHP读取变量。加载页面时必须对其进行解析,或者您需要通过AJAX获取它。我希望位于的文本文件或我选择的任何其他url以某种方式加载到javascript var中。那么您可能应该使用AJAX。是否可以在AJAX中从您的域名外读取txt文件,我已经了解到它不是。
<?php
file_put_contents("/var/www/noaa_data.txt",file_get_contents("http://www.ssd.noaa.gov/goes/east/tatl/txtfiles/ft_names.txt"));
?>