Почему PHP показывает переменную $greeting буквально, а не обрабатывает ее, на мой взгляд?Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Почему PHP показывает переменную $greeting буквально, а не обрабатывает ее, на мой взгляд?

Сообщение Anonymous »

Я работаю над проектом CodeIgniter 4 и использую собственную библиотеку шаблонов для управления своими представлениями. Я столкнулся с проблемой, из-за которой PHP отображает имя переменной $greeting буквально вместо того, чтобы правильно его обработать.
Вот упрощенная версия моей настройки:
контроллер

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

public function login($page = 'login')
{
$viewPath = "Modules\\Authentication\\Views\\" . $page;

// Data to be sent to the view
$data = [
'title' => ucfirst($page),
'islogin' => $this->ionAuth->loggedIn(),
'greeting' => 'Hello, welcome to the home page!',
];

// Render the view using the template library
return $this->template->renderAuth($viewPath, $data);
}
шаблон

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

class Template
{
protected $data = [];

public function renderAuth($view, $data = [])
{
echo view('Modules\\Authentication\\Views\\template\\header', $data);
echo view($view, $data);
echo view('Modules\\Authentication\\Views\\template\\footer', $data);
}
Проблема
Когда я использую следующий код в файле представления: с литералом:
Изображение

нет ошибок
Изображение
< /p>
Вместо отображения сообщения «Нет приветствия», когда $greeting не определен, PHP показывает на странице буквальный текст $greeting.
Однако, когда я используйте: Я получаю ошибку «неопределенная переменная», как и ожидалось.
[img]https://i.sstatic. net/WiCbvo7w.png[/img]

Вопросы
  • Почему PHP отображает $greeting буквально в представлении при использовании нулевой оператор объединения (??)?
  • Может ли эта проблема быть связана с настройкой short_open_tag в php.ini?
  • Как мне правильно настроить или устранить эту проблему, чтобы гарантировать правильную обработку переменных в моих представлениях?
Будем очень признательны за любые рекомендации по решению этой проблемы!

Подробнее здесь: https://stackoverflow.com/questions/789 ... sing-it-in
Ответить

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

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

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

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

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