Я получаю A & quot; Неустранимая ошибка: использование $ this, когда не в контексте объекта в & quot; при вызове статического «установщика» функция от конструктора

У меня есть класс. в основном конструкция и функция установки одинаковы.
все прекрасно работает таким образом.
но когда я пытаюсь удалить идентичный код из функции конструкции и вместо этого просто вызвать функцию установки, я получаю фатальную ошибку:
«Неустранимая ошибка: использование $ this, когда он не находится в контексте объекта в …», — вот код перед изменением (это работает без ошибок)

Class Zmanim extends ZmanimCalculation  {
//this class contains all the stuff needed in order to make the zmanim page work

private  $day_const,$month_const,$year_const,$latitude_const,$longitude_const,$tz_const,$date_convertor_const,$zmanim_array_const;function __construct($set_day,$set_month,$set_year,$set_latitude,$set_longitude,$set_tz,$set_date_convertor=true) {

$this->day_const=$set_day;
$this->month_const=$set_month;
$this->year_const=$set_year;
$this->latitude_const=$set_latitude;
$this->longitude_const=$set_longitude;
$this->tz_const=$set_tz;
$this->date_convertor_const=$set_date_convertor;

$this->zmanim_array_const=ZmanimCalculation::Full_Zmanim_calculation ($this->day_const,$this->month_const,$this->year_const,$this->latitude_const,$this->longitude_const,$this->tz_const,$this->date_convertor_const);}

static function setZmanim ($set_day,$set_month,$set_year,$set_latitude,$set_longitude,$set_tz,$set_date_convertor=true) {

$this->day_const=$set_day;
$this->month_const=$set_month;
$this->year_const=$set_year;
$this->latitude_const=$set_latitude;
$this->longitude_const=$set_longitude;
$this->tz_const=$set_tz;
$this->date_convertor_const=$set_date_convertor;

$this->zmanim_array_const=ZmanimCalculation::Full_Zmanim_calculation ($this->day_const,$this->month_const,$this->year_const,$this->latitude_const,$this->longitude_const,$this->tz_const,$this->date_convertor_const);
}

и вот как я называю конструкцию (все еще работает без ошибки:

$fullzmanim=new Zmanim ($_POST['zmanim_gregorian_day'],
$_POST['zmanim_gregorian_month'],
$_POST['zmanim_gregorian_year'],
$latitude,
$longitude,
$tz);

но когда я просто вызываю статическую функцию сеттера в функции конструкции, я получаю ошибку. вот плохой код:

Class Zmanim extends ZmanimCalculation  {
//this class contains all the stuff needed in order to make the zmanim page work

private  $day_const,$month_const,$year_const,$latitude_const,$longitude_const,$tz_const,$date_convertor_const,$zmanim_array_const;function __construct($set_day,$set_month,$set_year,$set_latitude,$set_longitude,$set_tz,$set_date_convertor=true) {
self::setZmanim($set_day,$set_month,$set_year,$set_latitude,$set_longitude,$set_tz,$set_date_convertor);}

static function setZmanim ($set_day,$set_month,$set_year,$set_latitude,$set_longitude,$set_tz,$set_date_convertor=true) {

$this->day_const=$set_day;
$this->month_const=$set_month;
$this->year_const=$set_year;
$this->latitude_const=$set_latitude;
$this->longitude_const=$set_longitude;
$this->tz_const=$set_tz;
$this->date_convertor_const=$set_date_convertor;

$this->zmanim_array_const=ZmanimCalculation::Full_Zmanim_calculation ($this->day_const,$this->month_const,$this->year_const,$this->latitude_const,$this->longitude_const,$this->tz_const,$this->date_convertor_const);
}

Кто-нибудь знает, что не так?
Спасибо!

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]