在PHP中编写大型elseif语句的简单方法

Kyl*_*nti 4 html php

我从电子邮件表单中获取帖子值,并将所有选项值设置为数字,我正在尝试将它们转换为实际字符串以通过电子邮件发送.我需要使这个代码更容易使用.

if ($subject == "1") {
$sub = "General Questions"; 
} elseif($subject == "2") {
$sub = "Membership";
} elseif($subject == "3") {
    $sub = "Club Fees";
} elseif($subject == "4") {
    $sub = "Proshop & Lessons";
} elseif($subject == "5") {
    $sub = "Events"; 
} elseif($subject == "6") {
    $sub == "Leagues & Programs";
} elseif($subject == "7") {
    $sub == "Resturant & Bar";
};
Run Code Online (Sandbox Code Playgroud)

也许我可以设置value=''实际值并一起跳过这一部分.

Bra*_*tie 8

为什么不制作一个关联数组呢?

$subs = array(
  1 => 'General Questions',
  2 => 'Membership',
  3 => 'Club Fees',
  4 => 'Proshop & Lessons',
  // others.
);

$sub = isset($subs[$subject]) ? $subs[$subject] : 'Default Value';
Run Code Online (Sandbox Code Playgroud)

  • @PaperP.RO取决于透视,它仍然覆盖了0索引数组的默认行为.;-)(另外,员工可以参考"`$ subject`成为`$ sub`") (2认同)