Loading...

PHP in Hindi – Visibility

  • Introduction to PHP visibility in Hindi
  • PHP visibility modes in Hindi 
  • Examples of PHP visibility in Hindi

Introduction to PHP Visibility 

किसी भी web application का secure होना अति आवश्यक होता है। यदि आपकी web application secure नहीं है तो कोई भी इसे आसानी से break कर सकता है और आपके users का private और महत्वपूर्ण data access कर सकता है।

उदाहरण के लिए classes में आपकी application से related महत्वपूर्ण data properties के रूप में store किया जाता है। इस data पर functions द्वारा operations perform किये जाते है।

इन properties और functions को आसानी से class के बाहर object द्वारा access किया जा सकता है। ऐसे में आपका data secure नहीं रहता है।

Data को secure करने के लिए PHP आपको controlling access mechanism provide करती है। इस mechanism को visibility कहा जाता है। Visibility द्वारा आप सभी properties और methods के access को control कर सकते है।

PHP Visibility Modes

PHP का visibility mechanism 3 modes में काम करता है। ये modes अलग अलग access levels define करते है। Programmers need के अनुसार किसी भी mode का access level properties और methods पर apply कर सकते है।

Visibility modes keywords के रूप में available है जिन्हें आप properties और methods declare करते समय define करते है।

Syntax of PHP Visibility Modes 

Properties पर visibility modes apply करने का general syntax निचे दिया जा रहा है।

[visibilityMode] [propertyName] = [constantValue];

Functions पर visibility modes apply करने का general syntax निचे दिया जा रहा है।

[visibilityMode] [functionKeyword] [functionName] (arguments-list)
{
// Function body

 

}

सभी visibility modes के बारे में निचे detail से बताया जा रहा है।

Public 

जब आप किसी property या method को public visibility mode के साथ declare करते है तो उन पर निचे दी गयी conditions apply हो जाती है।

  • जिस class में इन्हें declare किया गया है उसके अंदर इन्हें access किया जा सकता है। 
  • जिस class में इन्हें declare किया गया है उसे inherit करने वाली किसी भी class के अंदर इन्हें access किया जा सकता है।   
  • जिस class में इन्हे declare किया गया है उसके बाहर इन्हें access किया जा सकता है। 

Public visibility mode का उदाहरण निचे दिया जा रहा है।

<?php

 

// Parent class
class myClass
{
public $name = ‘James Bond’;
}

// Child Class
class subClass extends myClass
{

}

// Parent class object
$obj = new myClass();

// Sub class object
$subObj = new subClass();

// Accessing public property outside class. Valid.
echo $obj->name.”<br />”;

// Accessing public property of parent class. Valid.
echo $subObj->name; 

?>

जैसा की आप ऊपर दिए गए उदाहरण में देख सकते है, public declare की गयी properties को class के बाहर आसानी से access किया जा सकता है।

आपको उन्हीं properties और functions को public declare करना चाहिए जो महत्वपूर्ण नहीं हो या फिर जिनका आपकी web application से interact करने के लिए publicly access होना आवश्यक हो। यह उदाहरण निचे दिया गया output generate करता है।

PHP-public-visibility-example-in-Hindi

Protected 

जब आप किसी property या method को protected visibility mode के साथ declare करते है तो निचे दी गयी conditions उन पर apply हो जाती है। 

  • जिस class में इन्हे declare किया गया है उसके अंदर इन्हें access किया जा सकता है। 
  • जिस class में इन्हे declare किया गया है उसे inherit करने वाली किसी भी class के अंदर इन्हें access किया जा सकता है। 

Protected visibility mode का उदाहरण निचे दिया जा रहा है। 

<?php

 

// Parent class
class myClass
{
protected $name = ‘Dr Abdul Kalam’;
}

// Child class
class myOtherClass extends myClass
{

public function displayName()
{
// Accessing protected member of parent class in subclass. Valid.
return $this->name;
}

}

// Parent class object
$obj = new myClass;

// echo $obj->name;   Invalid will generate an error.
// Child class object

$otherObj = new myOtherClass;

// Accessing public function outside class. Valid.
echo $otherObj->displayName(); 

?>

जैसा की आप ऊपर दिए गए उदाहरण में देख सकते है protected properties को class के बाहर नहीं access किया जा सकता है।

यदि आप चाहते है की कोई property या function sub classes द्वारा access किया जा सके तो इसके लिये आपको उन्हें protected declare करना चाहिए। यह उदाहरण निचे दिया गया output generate करता है।

PHP-protected-visibility-example-in-Hindi

Private 

जब आप किसी property या method को private visibility mode के साथ declare करते है तो निचे दी गयी conditions उन पर apply हो जाती है। 

  • जिस class में इन्हें declare किया गया है केवल उसी class के अंदर इन्हें access किया जा सकता है। 

Private visibility mode का उदाहरण निचे दिया जा रहा है। 

<?php

 

class myClass
{

// Private property
private $name=’Sherlok’;

public function display()
{
// Accessing private property inside class. Valid.
echo “$this->name”;
}

}

class myOtherClass extends myClass
{

public function displayName()
{
// return $this->name;  //Invalid, subclass cannot access private properties
}

}

$obj = new myClass;
//echo $obj->$name; // Not Valid : Property is private can not access outside class
echo $obj->display(); // Valid accessing through public function

?>

जैसा की आप ऊपर दिए गए उदाहरण में देख रहे है private properties को class के बाहर access नहीं किया जा सकता है। इन्हे सिर्फ उसी class के अंदर access किया जा सकता है जिसमें इन्हे declare किया गया है।

जब आपका data महत्पूर्ण हो तो उस property को private declare करना चाहिए। ऐसा करने से सिर्फ class के अंदर ही उस property को access किया जा सकता है। ऊपर दिया गया उदाहरण निचे दिया गया output generate करता है।

PHP-private-visibility-example-in-Hindi

⇨ सभी properties को private declare करना और उन्हें public methods के द्वारा access करना एक अच्छी object oriented practice मानी जाती है।

Previous: PHP Classes & Objects
Next: PHP Properties