Тема, о которой вы спрашиваете, — «Значение параметров функции PHP по умолчанию». Вот несколько методов, которые вы можете использовать для установки значений по умолчанию для параметров функции в PHP:
-
Метод 1: встроенное присвоение значения по умолчанию
function myFunction($param1 = defaultValue1, $param2 = defaultValue2) { // Function body } -
Метод 2: использование функции
func_get_argsfunction myFunction() { $args = func_get_args(); $param1 = isset($args[0]) ? $args[0] : defaultValue1; $param2 = isset($args[1]) ? $args[1] : defaultValue2; // Function body } -
Метод 3: условное присвоение
function myFunction($param1, $param2 = null) { $param2 = $param2 ?? defaultValue2; // Function body } -
Метод 4: использование оператора объединения нулей (PHP 7+)
function myFunction($param1, $param2 = null) { $param2 = $param2 ?? defaultValue2; // Function body } -
Метод 5: использование оператора объединения нулей (PHP 7.4+)
function myFunction($param1, $param2 = null) { $param2 = $param2 ?: defaultValue2; // Function body } -
Метод 6: объявление типа и оператор объединения значений NULL (PHP 7.4+)
function myFunction($param1, ?string $param2 = null) { $param2 = $param2 ?: defaultValue2; // Function body } -
Метод 7: использование функции
extractfunction myFunction($params) { extract($params, EXTR_SKIP); $param1 = isset($param1) ? $param1 : defaultValue1; $param2 = isset($param2) ? $param2 : defaultValue2; // Function body } -
Метод 8. Использование ассоциативного массива
function myFunction($params) { $defaults = [ 'param1' => defaultValue1, 'param2' => defaultValue2, ]; $params = array_merge($defaults, $params); extract($params, EXTR_SKIP); // Function body }
Обратите внимание, что важно выбрать метод, который лучше всего подходит для вашего конкретного случая использования и версии PHP.