我能否以更简洁的方式实现这一目标?真的会很受欢迎。
switch($vocation) {
case 1: $vocation = "Sorcerer"; break;
case 2: $vocation = "Druid"; break;
case 3: $vocation = "Paladin"; break;
case 4: $vocation = "Knight"; break;
case 5: $vocation = "Master Sorcerer"; break;
case 6: $vocation = "Elder Druid"; break;
case 7: $vocation = "Royal Paladin"; break;
case 8: $vocation = "Elite Knight"; break;
}
谢谢!
很抱歉找不到更好的标题
最佳答案
您可以使用数组代替 switch 语句。
$vocations = array("Sorcerer", "Druid" ...);
$vocationStr = $vocations[$vocation - 1];
或者
$vocations = array(1 => "Sorcerer", 2 => "Druid" ...);
$vocationStr = $vocations[$vocation];
就我个人而言,我反对重用 $vocation 来引用两种类型(整数和字符串),因为它们很可能是您程序中的两个不同概念。
我还建议改为为这些值创建枚举类型,但这取决于上下文。
关于php - 将索引转换为指定字符串的更简洁方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1757665/