在 PHP 中我可以输入多少个"OR"条件有限制吗?



好的,所以我在WordPress中有一个代码块,在"elseif"语句中有"OR"条件。下面是代码:

   <?php } elseif($index == 1 || $index == 8 || $index == 9 || $index == 16 || $index == 17 || $index == 20 || $index == 21) { ?>

所以在$index == 20 || $index == 21

之前代码工作得很好

在elseif语句中使用||的次数是否有限制?

不,if子句中没有OR语句的限制。请记住,获得的or越多,可读性就会降低。总有一个更好的解决方案,而不是只是添加越来越多的or。

对于上面的例子,更好的解决方案是检查$index是否在一个可能值的数组中,如so:

不是

if ($index == 1 || $index == 2 || $index == 3) { /* ... */ }

你可以做

if (in_array($index, [1, 2, 3])) { /* ... */ }

没有限制。只要确保它是可读的。

看看in_array()函数。这样代码通常更紧凑,同时更容易阅读和理解:

if (in_array($id, [1, 8, 9, 16, 17]))
http://php.net/manual/en/function.in-array.php

最新更新