簡體   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