Abdulbosit Alijonov

Backend dasturchi

Hero Image

PHP OOP: Boshlang‘ich qo‘llanma

05 Sentabr, 2025 129

PHPda obyektga yo‘naltirilgan dasturlash (OOP) – bu kodni modul, qayta ishlatiladigan va oson boshqariladigan qilish usuli. OOP asosiy tushunchalari: class, object, properties, methods, inheritance, polymorphism, encapsulation va abstraction.

Class va Object

Class – bu ob’ektning shabloni, ya’ni unda xususiyatlar va metodlar aniqlanadi. Object esa shu class asosida yaratilgan haqiqiy nusxa bo‘lib, o‘z qiymatlarini saqlaydi.



class Car {

    public $color;

    public $brand;

    public function drive() {

        echo "Car is driving";

    }

}

$myCar = new Car();

$myCar->color = "red";

$myCar->brand = "Toyota";

$myCar->drive();

Properties va Methods

  • Properties – ob’ektning xususiyatlari (masalan, $color, $brand)
  • Methods – ob’ektning funksiyalari (masalan, drive())

Visibility orqali ularni cheklash mumkin:

  • public – hamma ko‘ra oladi
  • protected – faqat class va child class ko‘ra oladi
  • private – faqat class ichida ko‘rinadi

Constructor va Destructor

Constructor va Destructor metodlari object yaratilganda va yo‘q bo‘lganida ishga tushadi. Constructor ob’ektga boshlang‘ich qiymat berish uchun ishlatiladi.



class Car {

    public $brand;

    public function __construct($brand) {

        $this->brand = $brand;

        echo "Car $brand created";

    }

    public function __destruct() {

        echo "Car object is destroyed";

    }

}

$car = new Car("Honda");

Inheritance (Merosi)

Meros yordamida bir class boshqa classning xususiyatlari va metodlarini oladi, shu orqali kodni qayta ishlatish mumkin.



class Vehicle {

    public function start() {

        echo "Vehicle started";

    }

}

class Bike extends Vehicle {

    public function ride() {

        echo "Bike is riding";

    }

}

$bike = new Bike();

$bike->start();  // Vehicle started

$bike->ride();   // Bike is riding

Polymorphism va Interface

Polymorphism bir metod turli classlarda turlicha ishlashini bildiradi. Interface esa metodlar shablonini belgilaydi va classlarda majburiy aniqlanishini ta’minlaydi.



interface Drivable {

    public function drive();

}

class Car implements Drivable {

    public function drive() {

        echo "Car is driving";

    }

}

class Truck implements Drivable {

    public function drive() {

        echo "Truck is driving";

    }

}

$car = new Car();

$truck = new Truck();

$car->drive();   // Car is driving

$truck->drive(); // Truck is driving

Encapsulation

Encapsulation yordamida class ichidagi ma’lumotlar va metodlar himoyalanadi, faqat kerakli joylarda ochiladi. Bu kodni xavfsiz va boshqariladigan qiladi.



class BankAccount {

    private $balance = 0;

    public function deposit($amount) {

        $this->balance += $amount;

    }

    public function getBalance() {

        return $this->balance;

    }

}

$account = new BankAccount();

$account->deposit(500);

echo $account->getBalance(); // 500

Abstraction

Abstraction murakkab tizimlarni soddalashtirish va faqat kerakli xususiyatlarni ochish uchun ishlatiladi. Abstract classlar boshqa classlar tomonidan meros qilib olinadi.



abstract class Animal {

    abstract public function makeSound();

}

class Dog extends Animal {

    public function makeSound() {

        echo "Woof!";

    }

}

$dog = new Dog();

$dog->makeSound(); // Woof!

Xulosa

PHP OOP yordamida kod modular, qayta ishlatiladigan, oson tushunarli va xavfsiz bo‘ladi. OOP konseptlarini o‘rganish orqali katta loyihalarda tartib va samaradorlikni ta’minlash mumkin.