Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: ООП в PHP внутренние и private и public свойства класса.
Форумы портала PHP.SU » » Объектно-ориентированное программирование » ООП в PHP внутренние и private и public свойства класса.

Страниц (1): [1]
 

1. Maler_SI - 18 Мая, 2011 - 14:07:38 - перейти к сообщению
Здравствуйте! У меня такой вот вопрос. Что мне сделать, чтобы свойство того или иного класса было доступно только через соответствующий Get() и Set() ? Т.е. я написал класс

class Men {

var $name;

function Setname($name) {
$this->name = $name;
}

}

теперь создаю объект

$object = new Men;

и присваиваю свойству объекта name, какое-нибудь имя

$object->Setname("Nick");

фишка в том что я могу сделать это и не через сеттер Setname()
$object->name=Alex";

Мне не понятно как изолировать свойства класса как в C# например.
Там если переменна со статусом private то до неё кроме как через сеттер не обратишься.

Заранее всем спасибо.
2. OrmaJever - 18 Мая, 2011 - 14:11:58 - перейти к сообщению
Maler_SI пишет:
Там если переменна со статусом private то до неё кроме как через сеттер не обратишься.

Хоть бы попробовали Улыбка
PHP:
скопировать код в буфер обмена
  1. class Men {
  2.  
  3.  private $name;
  4.  
  5.  function Setname($name) {
  6.  $this->name = $name;
  7.  }
  8.  
  9.  }
3. Maler_SI - 18 Мая, 2011 - 14:17:53 - перейти к сообщению
Ой! А я чёта и не подумал! Спасибо огромное! =)
4. OrmaJever - 18 Мая, 2011 - 14:22:57 - перейти к сообщению
вобще ключевое слово var устарело и будет убрано в php6, место него используйте public, private, ptotected
5. Maler_SI - 18 Мая, 2011 - 14:28:22 - перейти к сообщению
Я собственно поверхностно знаю php , а вот недавно встала задачка переписать пару модулей для joomla! CMS, я полез а там класс на классе и классом погоняет, вот на вашем сайте начал вчера изучать объектно ориентированное программирование в php. Раньше по институту немного сталкивался с C# , поэтому и спросил на счёт public и private . А вообще что посоветуете почитать про ООП в php, что-нибудь по современнее? =)
6. OrmaJever - 18 Мая, 2011 - 14:47:46 - перейти к сообщению
для понимает этого достаточно http://php.su/learnphp/phpoo/
7. Maler_SI - 18 Мая, 2011 - 14:54:13 - перейти к сообщению
=) ну я в принципе тут и читаю, я по свежее спросил, потому что именно тут http://www.php.su/learnphp/phpoo и было то устаревшее слово var которое собираются убрать в php6. =)
8. Stierus - 18 Мая, 2011 - 15:15:37 - перейти к сообщению
http://www.php.net/manual/en/language.oop5.php тут всегда самое свежее
9. Maler_SI - 18 Мая, 2011 - 16:50:10 - перейти к сообщению
Спасибо! =)

 

Powered by ExBB FM 1.0 RC1