'', 'args' => [], 'code' => 500 ], ...$args) { if ($data instanceof ErrEnums) { parent::__construct($data->value, $data->code()); }else if (is_string($data)) { if (!empty($args)) { $data = format($data, $args); } parent::__construct($data, 500); } else{ $val = $data['msg']; if (isset($data['args'])) { $val = format($data['msg'], $data['args']); } parent::__construct($val, isset($data['code']) ?? 500); } } }