我正在用 PHP 生成某些項(xiàng)目。長話短說 - 我將帶有漂亮工具提示的對象保存到變量中。我生成了 100 多個項(xiàng)目。所以我有一個巨大的下拉 html 選擇所有項(xiàng)目。當(dāng)用戶選擇所需的項(xiàng)目時,他會轉(zhuǎn)到“生成”按鈕。在后端,我收到回復(fù),我想退回客戶選擇的商品。我正在考慮一個 switch 語句,它對應(yīng)于 html 選擇的名稱值,并且我將它與我的變量中的正確項(xiàng)目相匹配。測試它工作得很好。但是,如果我想包括我的所有物品,這將意味著數(shù)百個開關(guān)盒。如果 Switch 是我唯一可行的選擇,我很好,但是有什么方法可以自動創(chuàng)建 switch cases 嗎?否則我需要去手動寫下所有的開關(guān)盒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秒到達(dá)戰(zhàn)場
TA貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超6個贊
您可以將所有項(xiàng)目映射到一個數(shù)組中
$myitems = ["harle" => $random_harle,
.....
];
然后使用
foreach ($myitems as $key => $value)
{
if ($key == $helm)
return $value;
}
return "None";
這將測試給定$helm的$key. 如果有匹配你返回$value。
在循環(huán)(不匹配)之后,您可以返回默認(rèn)值。
此外,正如 CBroe 所建議的那樣,一個較短的版本將是
if (array_key_exists($helm, $myitems))
return $myitems[$helm];
return "None";
- 1 回答
- 0 關(guān)注
- 109 瀏覽
添加回答
舉報(bào)
0/150
提交
取消