繁体   English   中英

在JavaScript中循环遍历PHP数组

[英]Looping through a PHP array in javascript

我制作了一个数组,该数组在特定目录中具有所有文件名。 我已经对其进行了测试并将其打印到屏幕上。 我想在javascript代码中使用该数组,将其成员也打印到屏幕上以获取php for loop。

<!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并将其打印到屏幕,我想遍历javascript中window.prompt对象中的同一数组,并将列表打印到提示弹出窗口。

在body标签结束之前:

<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只是echo工具。 PHP执行所有循环控制,而Javascript通过PHP插入获取动态变量。

 <!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>
    }
 ?>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM