从数据库向php关联数组添加键值对
DB的设置如下所示:从数据库向php关联数组添加键值对,php,arrays,Php,Arrays,DB的设置如下所示: include 'php/DbConnect.php'; $sql = $mysqli->query( "SELECT t.*, v.* FROM task t INNER JOIN vocabtask vt ON (t.id = vt.taskid) INNER JOIN vocab v ON (v.id = vt.vocabid) WHERE vt.taskid = 1"); $wordsArray = array(); while ($ro
include 'php/DbConnect.php';
$sql = $mysqli->query(
"SELECT t.*, v.*
FROM task t
INNER JOIN vocabtask vt ON (t.id = vt.taskid)
INNER JOIN vocab v ON (v.id = vt.vocabid)
WHERE vt.taskid = 1");
$wordsArray = array();
while ($row = $sql->fetch_assoc()) {
// echo "<br> " . $row['taskname'] . ": ". $row['chinese'] . " : " . $row['english'];
$wordsArray['chinese']['english'] = $row['chinese'];
echo $wordsArray['chinese']['english'];
}
mysqli_close($mysqli);
包括'php/DbConnect.php';
$sql=$mysqli->query(
选择t.*,v.*
来自任务t
内部连接vocabtask vt ON(t.id=vt.taskid)
内部连接vocab v ON(v.id=vt.vocabid)
其中vt.taskid=1“;
$wordsArray=array();
而($row=$sql->fetch\u assoc()){
//echo“
”$row['taskname']”:“$row['chinese']”:“$row['english']”;
$wordsArray['chinese']['english']=$row['chinese'];
echo$wordsArray['chinese']['english'];
}
mysqli_close($mysqli);
输出:Ni-Ta-Wo
所需输出:Ni:You
Ta:HimWo:I
我希望将中文单词(key)和相关的英文翻译(value)加载到wordsArray中,但不知道要加载和访问的正确语法
谢谢也许你想要这个?它映射了一个方向,从中文到英文,但据我所知,没有一个真正伟大的方法来进行双向映射。(通常我使用两个映射来实现这一点。)编辑:根据您的编辑,这似乎是您想要的方向
$wordsArray = array();
while ($row = $sql->fetch_assoc()) {
$wordsArray[$row['chinese']] = $row['english'];
}
mysqli_close($mysqli);
var_dump($wordArray);
您可以使用jQuery
获取返回值,并使用jQuery.parseJSON()
和/或不使用ajax将其解析为jSON
更新,如果不想用ajax解析数据,只需将结果添加到脚本中的标记中,如
<script type="text/javascript">
(function($){
var data = '<?php echo $return_result; ?>';
var json = $.parseJSON(data);
console.log(json);
})(jQuery);
</script>
(函数($){
var数据=“”;
var json=$.parseJSON(数据);
log(json);
})(jQuery);
首先告诉我们钥匙在哪里,你的钥匙在db中吗?@PRAISER,谢谢。我该如何回显kv对呢?实际上是回显“
”.key($wordsArray)。":" . $wordsArray[$row['chinese']
仅输出与每个唯一英文值的键相同的Ni
,对于输出:echo$row['chinese']。": " . $wordsArray[$row['chinese']代码>没有更直接的方法来确保键是正确的,所以我在我的示例中放置了一个var_dump,它可以显示assoc.数组的结构。好的,所以我不能直接从$wordsArray输出键。。。真奇怪。。将此类数据发送到客户端的最佳方法是将它们放入一个数组中,并使用jSON\u encode
函数将它们作为jSON发送,它包括键和值。
<script type="text/javascript">
(function($){
var data = '<?php echo $return_result; ?>';
var json = $.parseJSON(data);
console.log(json);
})(jQuery);
</script>