gpt4 book ai didi

PHP in_array 函数,为什么这不起作用?

转载 作者:行者123 更新时间:2023-12-02 05:26:07 25 4
gpt4 key购买 nike

我有这个数组,从数据库生成:

do {
$rsvp_array[$row_rsRSVP['rsv_guest']] = array(
'id' => $row_rsRSVP['rsv_id'],
'guest' => $row_rsRSVP['rsv_guest'],
'confirmed' => $row_rsRSVP['rsv_confirmed']
);
} while ($row_rsRSVP = mysql_fetch_assoc($rsRSVP));

很好,使用 print_r() 我得到了这个:
Array
(
[1] => Array
(
[id] => 1
[guest] => 1
[confirmed] => 1
)

[15] => Array
(
[id] => 2
[guest] => 15
[confirmed] => 0
)

[5] => Array
(
[id] => 3
[guest] => 5
[confirmed] => 1
)

[10] => Array
(
[id] => 4
[guest] => 10
[confirmed] => 1
)

[6] => Array
(
[id] => 5
[guest] => 6
[confirmed] => 0
)

)

所以我知道阵列正在工作。

现在我需要查看一个数字是否在主数组中,即:
if (in_array(15, $rsvp_array)) { echo 'OK'; }

好吧,这行不通!数字 15 是数组的第二个键,但没有运气!
我哪里错了?
提前感谢您的答案...

最佳答案

in_array() 将在 中搜索值 ——而不是 key 。

您应该:

  • 使用 array_key_exists() : if (array_key_exists(15, $rsvp_array)) {...}
  • 或使用 isset() 测试是否设置了某个键:if (isset($rsvp_array[15])) {...}
  • 或(坏主意)使用 array_keys() 获取 key ,并使用 in_array() 在那个键数组上。
  • 关于PHP in_array 函数,为什么这不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5647702/

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