gpt4 book ai didi

php - 数组未正确分配数据库中的 ID

转载 作者:行者123 更新时间:2023-11-29 10:08:33 25 4
gpt4 key购买 nike

我目前有一个 select 语句构建一个数组并循环获取值。它返回正确的值,但没有分配正确的赋值。

因此,我将位置视为数组键,这是正常工作的,但例如在下面的数组中,Office 1 应该有一个包含 ID 1 的数组已分配的 Room MainID 2 已分配给 Room Extra,但 display_id 位于显示名称。

我的查询:

SELECT l.id , location_name, d.id as display_id, display_name, location_id
FROM locations l
inner join displays d
ON d.location_id = l.id;";

我的代码:

$displayResult = $mysqlConn->query($getDisplays);

$displayNames = array();
foreach($displayResult as $subArray) {
if(!array_key_exists($subArray['location_name'], $displayNames)) {
$displayNames[$subArray['location_name']] = array();

}
$displayNames[] = $subArray['display_id'];
$displayNames[$subArray['location_name']][] = $subArray['display_name'];

}

当前转储此数组:

Array
(
[Office 1] => Array
(
[0] => Room Main
[1] => Room Extra
)

[0] => 1
[1] => 2
[Office 2] => Array
(
[0] => Room Conference
[1] => Room Break
)

[2] => 3
[3] => 4

我只需要将display_id分配给display_name,因为我正在为每个display_name构建链接,并且我正在尝试将display_id保存为每个display_name的URL值。

我到底做错了什么?

最佳答案

我想你正确的循环应该是:

foreach($displayResult as $subArray) {
if(!array_key_exists($subArray['location_name'], $displayNames)) {
$displayNames[$subArray['location_name']] = array();

}
// here you add `display_name` under key `display_id`
$displayNames[$subArray['location_name']][$subArray['display_id']] = $subArray['display_name'];
}

关于php - 数组未正确分配数据库中的 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51426792/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com