PHP:如何更改Select以获得关联数组而不是多维数组(工作代码)



我是新的PHP和MySQLi希望有人能帮助我这个。

我目前使用以下命令为id列表($IDs)选择相应的值("content"),该列表到目前为止有效。然而,这是过于复杂的事情,因为它返回一个多维数组(我希望这是正确的术语)。

是否有一种方法来简化结果,使我只得到一个数组总的与tID和内容为每个项目?

My PHP:

$stmt = $conn->prepare("SELECT tID, en FROM Main WHERE tID IN(" . $IDs . ") ORDER BY tID");
$stmt->bind_param("s", $tID);
$stmt->execute();
$result = $stmt->get_result();
while($arrTranslations = $result->fetch_assoc()){
    $translations[] = array("tID" => $arrTranslations["tID"], "content" => $arrTranslations["en"]);
}
var_dump($translations);

示例结果:

array(3) {
  [0]=>
  array(2) {
    ["tID"]=>
    int(1)
    ["content"]=>
    string(6) "Value1"
  }
  [1]=>
  array(2) {
    ["tID"]=>
    int(2)
    ["content"]=>
    string(6) "Value2"
  }
  [2]=>
  array(2) {
    ["tID"]=>
    int(3)
    ["content"]=>
    string(6) "Value3"
  }
}

提前感谢,
迈克

你可以这样做,因为结果集中只有2个项目,如果tID是唯一的。

while($arrTranslations = $result->fetch_assoc()){
    $translations[$arrTranslations["tID"]] = $arrTranslations["en"];
}

生成

array(3) 
  [1]=>"Value1"
  [2]=>"Value2"
  [3]=>"Value3"

相关内容

  • 没有找到相关文章