"смешанный" Ошибка при попытке расширить HtmlHelper в CakePHP 3
Согласно книге, параметры HtmlHelper:: link выглядят так:
Cake\View\Helper\HtmlHelper::link(string $title, mixed $url = null, array $options = [])
Но когда я пытаюсь расширить помощник следующим образом:
public function link(string $title, mixed $url = null, array $options = []) {
и затем передать массив в $url, я получаю следующую ошибку:
Аргумент 2, передаваемый в App\View\Helper\MyHtmlHelper::link(), должен быть экземпляром App \ View \ Helper \ mixed или null, массив задан в...
Как я могу расширить помощник без этой ошибки?
1 ответ
Решение
Несколько типов, перечисленных в документации, являются подсказками для разработчика, а не тем, что вы должны использовать в своем коде. Если вы посмотрите на фактический API, вы увидите, что реальное определение функции
public function link($title, $url = null, array $options = [])
Используйте это, и вы должны быть в порядке.