我有一个javascript数组:
disharray = ([aa,11,],[bb,22])
我使用 - var jsoncvrt = JSON.stringify(disharray);
如何提取嵌套数组的值,以便我可以访问以下值:
$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;
}
}
答案 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注入的可能性无效。