Они оба корректны. Лично я предпочитаю Ваш подход лучше для его многословия, но это действительно до персонального предпочтения.
От руки, выполняя, если бы ($ _POST) не бросил бы ошибку - $ _POST массив существует независимо, если запрос был отправлен с заголовками POST. Пустой массив брошен ко лжи в булевой проверке.
Это разделение и назначение. x / = n
логически эквивалентно x = x / n
.
Аналогично + =
, - =
или * =
. Это ярлык для операции математического деления с присваиванием. Вместо выполнения
x = x / 10;
Вы можете получить тот же результат, выполнив
x /= 10;
Он присваивает результат исходной переменной после выполнения операции.
В большинстве языков, вдохновленных C, ответ: разделить и назначить. То есть:
a /= b;
- это сокращение для:
a = a / b;
LHS ( a
в моем примере) оценивается один раз. Это имеет значение, когда LHS сложна, например, элемент из массива структур:
x[i].pqr /= 3;
Разделение и присваивание:
a /= b;
то же самое, что
a = (a / b);
Это просто комбинация двух операторов в один.
В следующем примере:
double value = 10;
value /= 2;
Значение будет иметь окончательное значение 5.
Оператор = / делит переменную на операнд (в данном случае 2) и сохраняет результат обратно в переменной.