我试图从我的多维数组中只插入一个值到sql中。如果它是第一个子数组(如$global['somevalue']
),则可以正常工作,但如果它低于$global['somearray']['somevalue']
以下的任何级别,则无效。
例如,这不起作用:
mysqli_query($mysqli,"INSERT INTO recent_queries (`type`, `fetched`, `expires`) VALUES ('$global[query][type]', '$global[query][fetched]', '$global[query][expires]')");
但这是:
$type = $global['query']['type'];
$fetched = $global['query']['fetched'];
$expires = $global['query']['expires'].
mysqli_query($mysqli,"INSERT INTO recent_queries (`type`, `fetched`, `expires`) VALUES ('$type', '$fetched', '$expires')");
如何在不必声明新变量的情况下插入数据库(使用预先存在的数组)?
答案 0 :(得分:0)
你试过这个吗?
mysqli_query($mysqli,"INSERT INTO recent_queries (`type`, `fetched`, `expires`) VALUES ('{$global['query']['type']}', '{$global['query']['fetched']}', '{$global['query']['expires']}')");
答案 1 :(得分:0)
当您使用多维数组时,您可以使用$ array [' key']引用它们,并且不能直接在SQL文本中使用它们,例如" normal" $ variable,而你需要这样做,
mysqli_query($mysqli,"INSERT INTO recent_queries (`type`, `fetched`, `expires`) VALUES ('".$global['query']['type']."', '".$global['query']['fetched']."', '".$global['query']['expires']."')");