在javascript中循环一个PHP数组


Looping through a PHP array in javascript

我创建了一个数组,其中包含某个目录下的所有文件名。我已经测试过了,并打印到了屏幕上。我想在javascript代码中使用这个数组,将它的成员也打印到屏幕上用于php for循环。

<!DOCTYPE html>
<html>
<head>
<body>
<?php
$i=0;
$files = scandir('uploads');
for($i=2; $i<count($files);$i++) {
    echo '<br>';
    print_r( $files[$i]);
}
?>
<script>
function func() {
    var id = prompt("<?php for($i=2; $i<count($files);$i++)echo $files[i];?>", "");
}
</script>
</body>
</html>

循环遍历数组$files并将其打印到屏幕,我想在窗口中循环遍历相同的数组。对象,并将列表打印到提示窗口。

正文标签结束前:

<script>
function func() {
    var id = prompt("<?php for($i=2; $i<count($files);$i++)echo $files[i];?>", "");
}
</script>

但是这似乎没有将数组的任何内容打印到提示对象。

但是如果我这样做:

var list = prompt("<?php echo $files[2];?>", "");

它实际上输出数组的一个元素,没有循环。但是我想一次打印全部,我该怎么做呢?

我尝试使用print_r()在javascript的php代码,但这似乎没有什么不同。

在像$file[4]这样的精确位置打印数组可以工作,但是使用for循环则不行。

i改为$i,以使$files[i]更接近$files[$i]

var id = prompt("<?php for($i=2; $i<count($files);$i++)echo $files[i];?>", "");

使用:

var id = prompt("<?php for($i=2; $i<count($files);$i++)echo $files[$i];?>", "");

你的代码扭曲到PHP负责的地方,Javascript只是一个回声工具。PHP完成所有的循环控制,Javascript通过PHP insert获取动态变量。

 <!DOCTYPE html>
 <html>
 <head>
 <body>
 <?php
    $i=0;
    $files = scandir('uploads');
    for($i=2; $i<count($files);$i++) 
    {
     echo '<br>';
     print_r( $files[$i]);
     ?>
       <script type="text/javascript">
         prompt(<php? echo $files[i] ?>, "");
       </script>
    }
 ?>