Все для создания и продвижения сайтов

Верстка, программирование, SEO

Создание класса php

Создание класса на php является началом в изучении ООП.

Создаётся класс через функцию "class".

<php
  class Point{
      // код класса
  }
>?

Свойства класса

Создаём свойства. Свойства - это определённые значения по которым мы будем обращаться к классу.

<php
	class Point{
	
		public $x;
		public $y;
        }
>?

public - модификатор доступа переменной. Свойство будет доступно из вне класса.

Конструктор класса

Далее мы создаём конструктор класса, через функцию "__construct".

<php
	class Point{
	
		public $x;
		public $y;
		
		public function __construct($x, $y){
			$this->x = $x;
			$this->y = $y;
		}
	
	}
>?

$this - обращаемся к данному объекту. В данном случае к переменным.

Теперь попробуем создать объект.

<php
    $point = new Point(5,7);
	echo $point->x."
"; echo $point->y."
"; >?

Мы получили значения элементов через класс. На экран выводиться значения переменных.

Также мы можем манипулировать свойствами объекта, попробуем присвоить значение x=50 и выведем его.

<php
    $point = new Point(5,7);
	$point->x = 50;
	echo $point->x."
"; >?

На экране увидим новое значение.

Методы класса

Методы класса - это по сути функции конкретного класса.

Давайте создадим два метода(функции класса). В первом мы будем получать значение x, а во втором изменять его значение.

<php
	class Point{
	
		public $x;
		public $y;
		
		public function __construct($x, $y){
			$this->x = $x;
			$this->y = $y;
		}
		
		public function getX(){
			return $this->x;
		}
		
		public function setX($x){
			$this->x = $x;
		}
	
	}
	
>?

Отлично, теперь мы их опробуем:

<php
	$point = new Point(5,7);
	echo $point->getX()."
"; $point->setX(100); echo $point->getX()."
"; >?

На экране мы увидим:

5
100

В начале, мы с помощью функции GetX получили значение, а затем вывели - это 7.

Затем с помощью setX дали переменной новое значение и первой функции вывели его - это 100.

Если мы попробуем просто вывести класс point

echo $point;

То увидим ошибку: "Catchable fatal error: Object of class Point could not be converted to string", чтобы этого избежать используем метод __toString, который уже зарезервирован в php, который возвращает строку, если мы вызываем объект, давайте вставим его в класс.

	class Point{
	...
		public function __toString(){
			return "Вывод объекта с координатами (".$this->x."; ".$this->y.")";
		}
	
	}
echo $point;

И после того, как мы вызвали объект через echo, мы увидим на экране значение, которое возвращается через метод.

Вывод объекта с координатами (100; 7)

Также есть метод, который срабатывает при уничтожение объекта(когда объект уже не используется), к примеру если мы его уничтожим через оператор unser($point). Этот метод по умолчанию ничего не выводит, но мы можем это исправить.

	class Point{
        ...
		public function __destruct(){
			echo "Объект уничтожен";
		}
	}

Также давайте рассмотрим, как передавать объекты. Передадим объект point новому методу.

	class Point{
        ...
		public function setPoint($point){
			$this->x = $point->x;
			$this->y = $point->y;
		}
      }
        $new_point = new Point(10,20);
        $point->setPoint($new_point);
        echo $point."
";

Теперь разберём. Мы создали новый объект (new_point), затем значения нового объекта передаём нашему point и выводим его.

В этой статье мы подробно разобрали, как создаются : классы, объекты, методы(а также использования зарезервированных), это первый этап в изучении ООП для PHP.

На просторах Youtube нашёл хороший урок по данной статье.

Выделите опечатку и нажмите Ctrl + Enter, чтобы отправить сообщение об ошибке.