Спойлер: Супер-мега-ГК PHP: private function clearHtml($target) { if (is_array($target)) { $new = []; foreach ($target as $key => $value) { $new[$key] = $this->clearHtml($value); } return $new; } if (is_object($target)) { $new = new stdClass(); foreach ($target as $property => $value) { $new->{$property} = $this->clearHtml($value); } return $new; } return htmlspecialchars($target); } // Применение if (is_array($this->vars)) extract($this->clearHtml($this->vars)); Имеет ли смысл допилить: PHP: return is_string($target) ? htmlspecialchars($target) : $target; или можно всё подряд колбасить?
нельзя колбасить, т.к. в строгой типизации будут вылетать ошибки "функция ожидала аргумент с типом string, а пришла канистра с фруктовым задом".
ок, я и сам чёт туплю: у htmlspecialchars входной параметр - строка, значит и прилетать в неё должна строка решено