PHP

Изучаю php. В книжке дан код программы, объясните для чего строка? (код внутри)

$this->age - обращаемся к свойству.

$new_age // параметр функции, в который нужно поместить возраст.

=========================

// Конструктор
function Cat($new_age)
{
// Установить возраст этого кота в новое значение
$this->age = $new_age;
}

===========================

Вот этот кусок кода это конструктор. Конструктор класса. Конструктор это функция, которая вызывается автоматически, при создании объекта. Именно данная функция (конструктор) принимает один аргумент - возраст кота - $new_age. И затем, устанавливает это значение в свойство класса - $age, которое тут написано $this->age.

Что непонятно? Есть класс. У него есть свойства (переменные) и методы (функции), которые что-то делают с этими свойствами. Всё просто. Вот и всё ООП.)
ИИ
Ислам Ибрагимов
83 061
Лучший ответ
Устанавливает значение переменной с помощью метода. А что за книжка такая, как будто по PHP4, если не 3? Поновее не было что ли? Конструктор объявляется через public function __construct(), а по имени класса уже лет 5 как никто не делает. Выкидывай эту книжку и бери современную. Объявление переменных через var я тоже давненько не видел, обычно достаточно public/private/protected
Ты бы эту фунцкию лучше понял, если бы было protected $age, и ты бы не смог в неё снаружи добраться.
class Cat - кот. Один. А котов может быть много. И у каждого свой возраст.
$fluffy=new Cat(1);
$fluffy2=new Cat(2);
$fluffy3=new Cat(3);
Вот, мы передаем в конструкторе возраст. 1,2,3. И он запоминается внутри конкретного Cat ($fluffy, $fluffy2, $fluffy3 ) благодаря этой 9ой строчке.

И смените учебник на тем новее - тем лучше, а потом на официальную (по большей части переведенную, кстати) документацию.
Андрей Зуев
Андрей Зуев
27 070