Smarty Init не удалось использовать cli в codeigniter 4Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Smarty Init не удалось использовать cli в codeigniter 4

Сообщение Anonymous »

Я использую Smarty (4.2.1) в Codeigniter 4. В моем BaseController у меня есть это:

Код: Выделить всё

public function initController(RequestInterface $request, ResponseInterface $response, LoggerInterface $logger)
{
[...]
$this->initSmarty();
}
private function initSmarty() {
$configDirs = \Config\SmartyConfig::$configDirs;
$this->smarty = new Smarty();
$this->smarty->setTemplateDir($configDirs['templateDir']);
$this->smarty->setCompileDir($configDirs['compileDir']);
$this->smarty->setCacheDir($configDirs['cacheDir']);
$this->smarty->setConfigDir($configDirs['configDir']);
}
protected function smartyView($view, array $data = [],$display=true)  {
$this->smarty->assign($data);
$tpl = $this->smarty->getTemplateDir(0) . $view . '.' . \Config\SmartyConfig::$fileExtension;
if ($display) $this->smarty->display($tpl);
else return $this->smarty->fetch($tpl);
}
При использовании браузера все работает нормально, но теперь у меня есть вызов из cron, где мне нужен Smarty для создания PDF-файла - с использованием метода выборки - и здесь инициализация завершается с ошибкой.
Единственная ошибка, которую я получаю, — это вызов функции-члена Assign() для нулевого BaseController.php — поэтому $this->smarty имеет значение NULL — и я понятия не имею, почему.

Подробнее здесь: https://stackoverflow.com/questions/791 ... eigniter-4
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»