
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 oladiprotected
– faqat class va child class ko‘ra oladiprivate
– 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.