PHP 下拉列表变量

标签 php mysql variables post

我正在尝试创建一个下拉菜单,您可以在其中从 3 个选项中进行选择。我有以下代码,但我似乎无法让我的第三个选项起作用。有什么想法吗?

        $_POST['faction'] = ($_POST['faction'] == "s")? "S" : "K";

我想添加第三个选项“R”,但我无法让它工作。

请问有什么想法吗?

最佳答案

尽管添加了另一个 ternary声明你的声明是可能的我认为这会影响代码的可读性。

使用array将使这变得更简单。

$option_array = array('r' => 'R', 's' => 'S', 'k' => 'K');

if (array_key_exists($_POST['faction'])) { 
    $_POST['faction'] = $option_array[$_POST['faction']]
}

您可以选择添加 array_key_exists确保您没有更新$_POST['faction']如果$_POST['faction']包含其他值,但这是您的选择。

另一种与您类似的方法,具有多个三元运算:

$_POST['faction'] = ($_POST['faction'] == "s") ? ($_POST['faction'] == "r" ? "R" : "S") : "K";

关于PHP 下拉列表变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20775730/

相关文章:

php - 未选择数据库?

mysql - 与同一实体的多个一对多关系

java - 索引变量字符串参数时出现 NullPointerException

php - 无法根据 codeigniter 中的其他数据获取数据

php - MySql 'Select' 帮助

php - 无法删除或更新父行,外键约束失败

c - 为什么这个整数会自己递减?

c - 从名称和值数组初始化变量

php - 如何每 X 分钟运行一次 cronjob?

php - Lighthouse graphql 订阅