- Достъп до променливи от един метод в друг
WT форуми -> PHP MySQL ASP.NET -> Достъп до променливи от един метод в друг
Създайте нова тема Напишете отговор 
Автор Съобщение
confiscate
Турист
Турист

Регистриран на: 27/01/2007 8:45 am

Support: 10
Bonus: 15
Мнения: 538
Мнение 19/08/2018 9:56 pm     Достъп до променливи от един метод в друг Отговорете с цитат


Здравейте, понеже съм нов в OOP искам да ви попитам следното, ако имам няколко метода в един клас в първия метод съм взел някакви стойност от БД, как мога да използвам тези стойности в други методи в дадения клас?

PHP code:

<?php
class SomeClass
{
private $varA;
private $varB;

public function a() {
$this->varA = 2;
}

public function b() {
$this->a();
$this->varB = 3;
return $this->varA + $this->varB;
}
}

$obj = new SomeClass();
echo $obj->b();
?>


В момента го правя така, но в интернет пишеше, че не е добра практика. Забелязах и че, веднъж извикам ли по този начин метода а - $this->a() в някоя функция , неговите параметри са активни във всички други функции под него и това не ми е ясно, защо е така. Бихте ли ми дали яснота? Благодаря предварително!
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение Посетете сайта на потребителя
pix3l
Нов
Нов

Регистриран на: 08/10/2016 4:31 pm

Support: 6
Bonus: 12
Мнения: 139
Мнение 20/08/2018 1:26 pm      Отговорете с цитат


Щом обекта ти се състои от $varA и $varB, не е лоша практика методите да работят с тези свойства... методите са предназначени да работят с данните в обекта.

Относно втория ти въпрос, това не са параметри, ти работиш с данни на обекта, които са достъпни от всички методи на обекта.
Върнете се в началото
Вижте профила на потребителя Изпратете лично съобщение
Покажи мнения от преди:    
Създайте нова тема   Напишете отговор    web-tourist.net Форуми -> PHP MySQL ASP.NET Часовете са според зоната GMT + 2 Часа
Страница 1 от 1


 
Идете на:  
Не Можете да пускате нови теми
Не Можете да отговаряте на темите
Не Можете да променяте съобщенията си
Не Можете да изтривате съобщенията си
Не Можете да гласувате в анкети