Free tutorials & notes in Hindi & English · Clean code examples 🧰 मुफ़्त PDF और फ़ोटो टूल्स →
📘 Lesson  ·  Lesson 15

OOP in PHP

OOP क्या है

Object-Oriented Programming (OOP) code को objects के इर्द-गिर्द व्यवस्थित करने का तरीका है — ऐसी self-contained इकाइयाँ जो data (properties) और actions (methods) दोनों रखती हैं। बिखरे variables और functions के बजाय, आप related चीज़ें एक class में group करते हैं। यह बड़े projects को साफ़, दोबारा-इस्तेमाल-योग्य और बढ़ाने में आसान रखता है।

💡 Class = blueprint। Object = उस blueprint से बनी असली चीज़।

Class और object

<?php
  class Car {
      public $color = "red";
  }

  $myCar = new Car();      // object बनाना
  echo $myCar->color;      // red
?>
red

class Car blueprint है; new Car() असली object बनाता है। object की property तक arrow -> से पहुँचते हैं।

Properties और methods

Properties object का data हैं; methods उसके actions।

<?php
  class Car {
      public $brand = "Tata";
      public function honk() {
          return "Beep from " . $this->brand;
      }
  }
  $c = new Car();
  echo $c->honk();
?>
Beep from Tata

Method के अंदर $this का मतलब "यह object" है, तो $this->brand मौजूदा car का brand पढ़ता है।

Constructor

__construct() object बनते ही अपने-आप चलता है — setup के लिए बढ़िया।

<?php
  class User {
      public $name;
      public function __construct($name) {
          $this->name = $name;
      }
  }
  $u = new User("Aman");
  echo $u->name;
?>
Aman

new User("Aman") में "Aman" constructor को जाता है, जो उसे store करता है। अलग setup call की ज़रूरत नहीं।

Inheritance

Child class parent को extends करके उसका code दोबारा इस्तेमाल करती है।

<?php
  class Animal {
      public function eat() { return "eating"; }
  }
  class Dog extends Animal {
      public function bark() { return "woof"; }
  }
  $d = new Dog();
  echo $d->eat();   // inherited
  echo $d->bark();  // अपना
?>
eating woof

Dog के पास Animal का eat() अपने-आप है, साथ में अपना bark()। यह साझा code दोबारा लिखने से बचाता है।

public, private, protected

Keywordकहाँ से पहुँच योग्य
publicकहीं से भी
protectedClass और उसकी children
privateसिर्फ़ उसी class के अंदर

Internal विवरण को private बनाइए ताकि बाहर का code उन्हें गलती से न बदले। सिर्फ़ ज़रूरी चीज़ें public रखिए। इस विचार को encapsulation कहते हैं।

आम गलतियाँ

  • new भूलना। Class सिर्फ़ blueprint है; object बनाने को new चाहिए।
  • -> की जगह .। Object members arrow -> इस्तेमाल करते हैं, dot नहीं।
  • Methods में $this भूलना। object की अपनी property तक $this->prop से पहुँचिए।
  • सब कुछ public बनाना। सुरक्षित, साफ़ code के लिए internal data private रखिए।

सारांश

  • OOP data और actions को classes व objects में group करता है।
  • Class blueprint है; new object बनाता है; members तक -> से पहुँचिए।
  • __construct() object को अपने-आप set करता है।
  • extends inheritance देता है — parent का code दोबारा इस्तेमाल।
  • public/private/protected access तय करते हैं (encapsulation)।

आगे, OOP गहरा कीजिए abstract classes बनाम interfaces से, या code दोबारा इस्तेमाल कीजिए PHP traits से।

अक्सर पूछे जाने वाले प्रश्न (FAQ)

Class और object में क्या अंतर है?
Class एक blueprint है — यह बताता है किसी चीज़ के पास क्या data और actions हैं। Object उस blueprint से बनी असली चीज़ है। जैसे Car class है; आपकी ख़ास लाल car उसका object है। एक class कई objects बना सकती है।
Constructor क्या करता है?
__construct() method अपने-आप तब चलता है जब आप new से object बनाते हैं। यह object की शुरुआती values set करने को इस्तेमाल होता है, जैसे नए user को तुरंत उसका नाम देना।
OOP में inheritance क्या है?
Inheritance एक class को दूसरी class का code दोबारा इस्तेमाल करने देता है। Child class parent को extends करती है और उसकी सारी properties व methods पा लेती है, फिर अपनी जोड़ या बदल सकती है। यह साझा code दोहराने से बचाता है।
public, private और protected में क्या अंतर है?
ये तय करते हैं कि property या method को कौन access कर सकता है। public कहीं से पहुँच योग्य, private सिर्फ़ उसी class के अंदर, और protected class और उसकी child classes के अंदर। internal विवरण के लिए private इस्तेमाल कीजिए।
PHP में $this का क्या मतलब है?
$this मौजूदा object को दर्शाता है — वो ख़ास जिस पर method चल रहा है। इससे आप उस object की अपनी properties पढ़ते या set करते हैं, जैसे $this->name।
← Back to PHP Tutorial
🔗

Share this topic with a friend

यह topic किसी दोस्त को भेजें

Found it useful? Send it to a classmate learning the same thing.

अच्छा लगा? जो दोस्त यही सीख रहा है, उसे भेज दीजिए।

💻 लाइव कोड एडिटर

इस पेज के प्रोग्राम यहीं तैयार हैं — चलाएँ, बदलें और सीखें। कुछ भी इंस्टॉल किए बिना।
OneCompiler द्वारा संचालित। कोड एडिटर में अपने आप आ जाता है — Run दबाकर आउटपुट देखें। अगर एडिटर न खुले तो नए टैब में खोलें.
अगला topicPHP MySQL Connection (PDO) आपकी प्रगति: 15 / 50 (30%) · Lesson 16 / 50 आगे बढ़ें →

यह lesson कैसा लगा?

आपकी राय से हम content और बेहतर बनाते हैं।

अपना review और सुझाव लिखें (वैकल्पिक)

Review approve होने के बाद आपका नाम और शहर इसके साथ public दिख सकते हैं। Email या phone न लिखें।

▶ CodingEasily on YouTube

Video से सीखें – आसान Hindi में

चुनी हुई video: RDBMS भाग 3 – Class XI Commerce IT

▶ Channel subscribe करें