Почему не передаются параметры в метод php? Добрый вечер, объясните новичку, есть два файла и ситуация следующая: var1 = new Myclass();
$par1 = 'ex3.php';
$par2 = 123;
$this->var1->mymethod($par1,$par2);

}
}
$child = new MyClass2();
$child->action_index();


?> и второй файл ex3.php
метод в первом классе принимает два значения $par1,$par2, в втором классе я объявляю одноименные св-ва и и кладу их в метод первого класса, но если я изменю названия свойств($par1,$par2) и положу их в метод то он не сработает хотя значения останутся прежними, объясните почему?

21 Авг 2019 в 07:08
167 +1
0
Ответы
1

Проблема заключается в том, что переменные $par1 и $par2, которые вы объявляете в методе action_index класса MyClass2, являются локальными для этого метода. Когда вы передаете их в метод mymethod класса Myclass, они не передаются как параметры функции ex3.php, поэтому файл ex3.php не получает их значения.

Если вы хотите передать значения $par1 и $par2 из метода action_index в ваш метод mymethod, вам нужно использовать свойства объекта MyClass2, такие как $this->par1 и $this->par2, а затем передавать их в метод.

Примерно так:

class MyClass2
{
public $par1;
public $par2;
function action_index() {
$this->var1 = new Myclass();
$this->par1 = 'ex3.php';
$this->par2 = 123;
$this->var1->mymethod($this->par1, $this->par2);
}
}

Теперь значения $par1 и $par2 будут переданы в метод mymethod и отобразятся в файле ex3.php.

20 Апр в 13:06
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 92 548 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир