我试图将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 code
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;
我想用这种模式做但不行。
答案 0 :(得分:2)
你可以“内爆”它,或者你可以使用JSON。
var array = [<?php echo implode($array, ","); ?>];
var array = <?php echo json_encode($array); ?>;
答案 1 :(得分:0)
只需在js数组括号内迭代php数组。
var array =[<?php foreach ($newArray as $value) echo "'" . $value . "',"; ?>];
您可能需要额外添加一行来剪辑最后一个,