我已经有一段时间没有用 PHP 编码了,而且我没有运气用 Google 搜索这个基本问题。
如果我想做这样的事情:
if ($x == $a || $x == $b || $x == $foo || $x == $bar) { //whatever
有什么好的写法吗?我在想类似 SQL 的 IN 运算符:
if ($x IN ($a, $b, $foo, $bar)) { //whatever
有没有一种方法可以在不使用数组的情况下简化代码?
http://php.net/manual/en/function.in-array.php
但是,值得注意的是,您有点将两种类型的语言混为一谈; PHP是一种脚本语言,SQL是一种查询语言。它们服务于两个截然不同的目的,并在幕后做截然不同的事情,所以这是一个重要的区别。
[编辑:不使用数组?可能不会,不会;你抛弃了在这种情况下特别有用的构造]
答案是使用 in_array(),但如果你经常使用它,请创建一个别名:
使用函数 in_array 如下;
if (in($x, [$a, $b, $foo, $bar]) { }