Abdulbosit Alijonov

Backend dasturchi

Hero Image

PHP OOP: Boshlang‘ich qo‘llanma

05 Sentabr, 2025 67

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.