【问题标题】:How to convert php array into javascript array [duplicate]如何将php数组转换为javascript数组[重复]
【发布时间】:2016-08-15 01:59:54
【问题描述】:

我尝试将 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;   

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

【问题讨论】:

  • $row['code']中有什么内容???
  • [&lt;?php encode ?&gt;] 正在创建一个数组,其中包含您的编码数组,然后您将其存储在另一个数组中。你只需要var arr = &lt;?php echo json_encode($your_array); ?&gt;;
  • 你能用正确的代码回答@MarcB的问题吗
  • 不工作@MarcB
  • 不工作如何?就像我说的,如果您只想将您在 php 中构建的值数组嵌入到 javascript 中的 var 中,那么您所需要的就是我在上面发布的那一行。一切都只是创建一个更大的数组,每个元素中包含多个 from-db 数组副本。

标签: javascript php arrays


【解决方案1】:

您可以“内爆”它,也可以使用 JSON。

内爆方法

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

JSON 方法

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

【讨论】:

    【解决方案2】:

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

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-06-20
      • 2017-03-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多