嵌套的javascript数组到php数组

时间:2014-04-12 20:14:28

标签: javascript php arrays json

我有一个javascript数组: disharray = ([aa,11,],[bb,22])

我使用 - var jsoncvrt = JSON.stringify(disharray);

将此作为json对象发送给php

如何提取嵌套数组的值,以便我可以访问以下值: $a = aa$b = 11

我使用下面的代码,但输出为

aa11
bb22

请注意,我的服务器使用php 5.2

$data = json_decode(stripcslashes($_POST['strings']));
foreach ($data as $d => $v) {
    foreach ($v as $v1 => $value) {
        echo $value;
    }
}

1 个答案:

答案 0 :(得分:0)

你的代码很好。只需将其添加到代码顶部

即可
  $values = array();

现在将内部foreach循环更改为

 if( sizeof($v) == 2 ){
    $values[$v[0]] = intval($v[1]);
 } 

现在要访问,说“aa”对应的值只需使用$values['aa']

您可以使用以下代码将其插入表格

  $con = mysqli_connect(HOSTNAME, USERNAME, PASSWORD, DBNAME);
  $query = "INSERT INTO tablename (key, value) VALUES(?, ?);";
  $stmt = $con->prepare($query); 
  if( $stmt ){
       foreach ($values as $key => $value){
            $stmt->bind_param("sd", $key, $value);
            $stmt->execute();
       }
       $stmt->close();  
  }
  $con->close(); 

$query变量中,'?'代表可以取任何值的外卡字符,它通过调用bind_param()函数来设置。在bind_param函数中,'s'代表字符串,'d'代表整数数据类型。这是执行数据库查询的正确方法,因为它们使SQL注入的可能性无效。