php - 如果满足for循环中的if条件,如何获取相应的数组键值
问题描述
我有任何带有键和值的数组,如果键等于某个字符串,我想获取键的值。
当我使用这段代码时,我得到了数组的最后一个键值。如果我们愿意,我也可以灵活地更改数组结构。
$grouparray =[ "red" => "4" , "blue" =>"5" , "green" => "6"];
foreach($grouparray as $x=>$x_value){
if($x=blue){
$group_id=$x_value;
}
}
print_r($group_id);
我想期待$group_id = 5;
解决方案
您的if
陈述中有两个问题:
替换if ($x=blue) {
为if ($x == "blue") {
Blue
是一个字符串,所以你需要一些引号=
是赋值,==
还是===
比较。
但是你不应该做一个 foreach 循环来得到你的答案。如果你只是这样做$group_id = $grouparray['blue'];
你会得到你想要的,不知道为什么你需要一个循环?
推荐阅读
- c - 在 C 中超过 1024x1024 矩阵时,总线错误/核心转储
- loops - 来自循环回归的stata绘制系数
- sql - 使用 HAVING 还是 WHERE?
- javascript - 为从标签发出的请求设置自定义引荐来源网址
- excel - Excel DSTDEV 不使用范围内的标题
- android - 如何在文本视图中创建可点击的链接?
- django - 尽管在响应标头中,但 Django CORS 标头“Access-Control-Allow-Origin”丢失
- javascript - Google oAuth2 UnhandledPromiseRejectionWarning:错误:未设置刷新令牌
- i2c - MPU-6050 突发读取自动增量
- python - Python smtplib 第二次连接失败