На самом деле ваш код уже в порядке.
Если вы не хотите погружаться в глубины рефакторинга , просто оставьте все как есть. Потому что:
- делает именно то, для чего предназначен - проверяет некоторую переменную на соответствие некоторым условиям.
- более важно: выглядит как код для проверки некоторой переменной на соответствие некоторым условиям. Таким образом, вы всегда можете сказать, что он делает. Это намного важнее, чем какой-то необычный шортленд.
Стремясь к краткости, не стоит забывать удобочитаемость .
Единственное приемлемое решение - это то, которое не менее читаемо, чем ваше текущее. Который читает (буквально: если вы читаете это вслух), как это было задумано.
Пример: сделав такую функцию,
function whateverCondition($variable,$array) {
return ( $variable == $array[1]
|| $variable == $array[3]
|| $variable == $array[10]);
}
вы можете позвонить позже,
if (whateverCondition($somevariable,$somearray))
сохраняя и краткость и удобочитаемость (если вы правильно его называете).
Как уже упоминалось в комментариях, параметры кажутся немного избыточными. это зависит. если это будет функция, держите их на месте.
если эта функция будет методом некоторого соответствующего класса - вы можете опустить их, сделав ее
if ($user->meetCondition())