如何将php数组转换为javascript数组


How to convert php array into javascript array

我试图将PHP数组实现到JavaScript中,但问题是它没有正确转换。

例如,如果 PHP 数组$new_array的值为 a,q,s,t,u则它分配给 JavaScript 数组的所有索引,例如:

js_array[0]=a,q,s,t,u;
js_array[1]=a,q,s,t,u;
js_array[2]=a,q,s,t,u;
js_array[3]=a,q,s,t,u;
js_array[4]=a,q,s,t,u;
js_array[5]=a,q,s,t,u;

这是我的PHP代码:

    $new_array = array(); // create a new array
$sql=mysql_query("SELECT * FROM animate ORDER BY RAND() LIMIT 5") or die("query Field");
 while($row=mysql_fetch_array($sql)){
    $new_array[] = $row['code'];
 }

JS代码

var array =[<?php echo json_encode($new_array);?>];
        alert(array[0]);
   for(var i=0; i <=9 ; i++)
        {
            array[i]=[<?php echo json_encode($new_array);?>];
    }

我想分配如下值:

array[0]=a;
array[1]=q;
array[2]=s;
array[3]=t;
array[4]=u;   

我想以这种模式做,但它不起作用。

你可以

"内爆"它,也可以使用JSON。

内爆法

var array = [<?php echo implode($array, ","); ?>];

JSON方法

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

只需迭代 js 数组大括号内的 php 数组即可。

var array =[<?php foreach ($newArray as $value) echo "'" . $value . "',"; ?>];

您可能需要添加一条额外的行来剪辑最后一个,