@barder

Что за ошибка Using $this when not in object context?

Привет всем.
Короче вчера обновил битрикс, ядро и модули, теперь при логине на сайте пишет:
[Error] 
Using $this when not in object context (0)
/var/www/u0462316/data/www/reg-inet.ru/bitrix/modules/main/classes/general/user.php:112
#0: CAllUser::GetFullName()
	/var/www/u0462316/data/www/reg-inet.ru/login/index.php:5


Причем заходит нормально...

в файле user.php ругается на 112 строку, там функция
public function GetFullName()
	{
		return $this->GetParam("NAME");
	}

а вызывается функция в индексном файле в папке login:
$userName = CUser::GetFullName();
if (!$userName)
	$userName = CUser::GetLogin();
?>

если правильно понимаю, то переменная $this не может быть использована в контексте стрелочной функции..
Какой выход есть для исправления ошибки?
  • Вопрос задан
  • 93 просмотра
Пригласить эксперта
Ответы на вопрос 2
Как уже сказал первый отвечающий: вы пытаетесь вызвать статистически метод GetFullName(). Нужно сделать хотя бы так:
$user = new CUser();
$userName = $user->GetFullName();
if (!$userName)
  $userName = $user->GetLogin();
Ответ написан
@oxidmod
у вас тут 2 проблемы
1. Метод не статический, а вы вызываете его как статический
2. В статических методах нет $this
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы