⊗ppOpAdCOM 22 of 107 menu

PHP da OOP da Klasslardagi Ob'ektlar bilan Ishlash

Klass metodlari boshqa klasslarning ob'ektlarini parametr sifatida qabul qilishi va bu ob'ektlar bilan ishlashi mumkin. Keling, buni misolda ko'ramiz. Quyidagi klassimiz bor deb faraz qilaylik:

<?php class User { private $name; public function __construct($name) { $this->name = $name; } public function getName() { return $this->name; } } ?>

Faraz qilaylik, foydalanuvchi ob'ektlari to'plami bilan ishlaydigan klass yaratmoqchimiz:

<?php class UsersCollection { } ?>

Foydalanuvchi ob'ektlarini maxsus xususiyatda massiv ko'rinishida saplaymiz:

<?php class UsersCollection { private $users; public function __construct() { $this->users = []; } } ?>

Keling, massivga yangi foydalanuvchi qo'shish uchun metod yarataylik:

<?php class UsersCollection { private $users; public function __construct() { $this->users = []; } public function add($user) { $this->users[] = $user; } } ?>

Endi barcha foydalanuvchilarning ismlarini chiqaradigan metod yarataylik:

<?php class UsersCollection { private $users; public function __construct() { $this->users = []; } public function add($user) { $this->users[] = $user; } public function show() { foreach ($this->users as $user) { echo $user->getName() . '<br>'; } } } ?>

Keling, klassimizning ishlashini ko'rib chiqaylik. Avval uning ob'ektini yaratamiz:

<?php $uc = new UsersCollection(); ?>

Endi to'plamimizga bir nechta foydalanuvchi qo'shamiz:

<?php $uc->add(new User('john')); $uc->add(new User('eric')); $uc->add(new User('kyle')); ?>

Endi barcha foydalanuvchilarning ismlarini chiqaradigan metodni chaqiramiz:

<?php $uc->show(); ?>

EmployeesCollection klassini yarating, u xodimlar massivini o'z ichiga oladi.

Ushbu klassda yangi xodim qo'shish uchun metod yarating.

Ushbu klassda barcha xodimlarni chiqarish uchun metod yarating.

Ushbu klassda barcha xodimlarning umumiy maoshini hisoblash uchun metod yarating.

Ushbu klassda barcha xodimlarning o'rtacha maoshini hisoblash uchun metod yarating.

Oʻzbek
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекTiếng Việt
Biz sayt ishlashi, tahlil qilish va shaxsiylashtirish uchun cookie-fayllardan foydalanamiz. Ma'lumotlarni qayta ishlash Maxfiylik siyosatiga muvofiq amalga oshiriladi.
hammasini qabul qilish sozlash rad etish