PHP:如何更改 Select 以获得关联数组而不是多维数组(工作代码)
PHP: How to change Select to get associative array instead of multidimensional array (working code)
我是 PHP 和 MySQLi 的新手,希望有人能帮我解决这个问题。
我目前使用以下方法 select 到目前为止有效的 ID 列表 ($IDs
) 的相应值 ("content"
)。
但是,这使事情过于复杂,因为它 returns 是一个多维数组(我希望这是正确的术语)。
有没有一种方法可以简化结果,这样我总共只得到一个数组,其中包含每个项目的 tID 和内容?
我的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"
我是 PHP 和 MySQLi 的新手,希望有人能帮我解决这个问题。
我目前使用以下方法 select 到目前为止有效的 ID 列表 ($IDs
) 的相应值 ("content"
)。
但是,这使事情过于复杂,因为它 returns 是一个多维数组(我希望这是正确的术语)。
有没有一种方法可以简化结果,这样我总共只得到一个数组,其中包含每个项目的 tID 和内容?
我的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"