我正在用 PHP 生成某些项目。长话短说 - 我将带有漂亮工具提示的对象保存到变量中。我生成了 100 多个项目。所以我有一个巨大的下拉 html 选择所有项目。当用户选择所需的项目时,他会转到“生成”按钮。在后端,我收到回复,我想退回客户选择的商品。我正在考虑一个 switch 语句,它对应于 html 选择的名称值,并且我将它与我的变量中的正确项目相匹配。测试它工作得很好。但是,如果我想包括我的所有物品,这将意味着数百个开关盒。如果 Switch 是我唯一可行的选择,我很好,但是有什么方法可以自动创建 switch cases 吗?否则我需要去手动写下所有的开关盒switch ($helm){ case "harle": $helm = $random_harle; break; case "eth_harle": $helm = $random_harle_eth; break; case "perfect_harle": $helm = $perfect_harle; break; case "perfect_harle_eth": $helm = $perfect_harle_eth; break; // and a 100+ more of these default: $helm = "None";}
1 回答
30秒到达战场
TA贡献1828条经验 获得超6个赞
您可以将所有项目映射到一个数组中
$myitems = ["harle" => $random_harle,
.....
];
然后使用
foreach ($myitems as $key => $value)
{
if ($key == $helm)
return $value;
}
return "None";
这将测试给定$helm的$key. 如果有匹配你返回$value。
在循环(不匹配)之后,您可以返回默认值。
此外,正如 CBroe 所建议的那样,一个较短的版本将是
if (array_key_exists($helm, $myitems))
return $myitems[$helm];
return "None";
- 1 回答
- 0 关注
- 70 浏览
添加回答
举报
0/150
提交
取消