使用循环将数组数据从php传递到javascript

时间:2019-06-07 18:46:58

标签: javascript php

是否存在以正确方式实现这种“算法”的类似方法?

for(i=0;i<howManyCourses;i++){

            var stored = "<?php echo $buf[i] ?>";
            var option = document.createElement("option");
            option.text=stored;
            e.add(option);

        }

所以我想将数据从$ buf数组传递到javascript变量中。我已经尝试了许多方法,但是似乎找不到解决方案。我是php新手,对于任何明显的错误我深表歉意。

2 个答案:

答案 0 :(得分:1)

它应该在同一文件中,或者在其他情况下, AJAX 将是解决方案。

<script type="text/javascript">

       const arr = <?php echo json_encode($buf); ?>;

       for (var i = 0; i < arr.length ; i++) {
           //do something
       }

 </script>

答案 1 :(得分:0)

如果您需要JS的变量buf与PHP的$buf包含相同的元素,则可以执行以下操作:

var buf = <?php echo json_encode($buf); ?>;

请记住,如果PHP的$buf不是索引数组,那么JS的buf将是对象而不是数组。