Learn More

Constants in PHP | कांस्टेंट और वेरिएबल में अंतर हिंदी में

PHP constant वेरिएबल की तरह ही होते हैं परन्तु इनमे कुछ अंतर होता हैं । Constant value कभी भी execute time(Run time) पर change नहीं होती जबकि वेरिएबल की value execute समय पर भी बदली(change) जा सकती हैं । यदि constant value को define कर दिया गया हैं तो बाद में रन टाइम पर वैल्यू को बदला नहीं जा सकता हैं ।

जैसा कि आप जानते हैं कि, हमें एक variable declare करने के लिए PHP define() फंक्शन का उपयोग करने की आवश्यकता नहीं है, लेकिन यदि आप एक constant बना रहे हैं, तो आपको define() फंक्शन का उपयोग करना होगा। define() फ़ंक्शन के बिना, आप constant बनाने में सक्षम(unable) नहीं हो सकते।Constant global scope रखते हैं ।

Default रूप से, constant case sensitive होते हैं। हम constant को परिभाषित(define) करते हुए case-insensitive को enable कर सकते हैं । PHP constant को uppercase letter में define करना चाइये । आप underscore (_) या letter के साथ constant start कर सकते हैं। वेरिएबल के विपरीत, कांस्टेंट को $ साइन के साथ define नहीं किया गया है। Constant नाम से पहले कभी भी $ साइन का उपयोग नहीं होता हैं ।

PHP में वेरिएबल बनाने के लिए $ साइन का use किया जाता हैं परन्तु कांस्टेंट के साथ कभी भी $ साइन का use नहीं किया जाता हैं ।यदि वेरिएबल से $ साइन को हटा देते हैं तो वो कांस्टेंट बन जाता हैं उसको define() फंक्शन की साथ define करना पड़ता हैं ।

Constant syntax


    
define(name, value, case-insensitive)

Name- Constant का नाम

Value –Constant की वैल्यू

Case-insensitive -कांस्टेंट case-sensitive होना चाइये की case-insensitive

उपरोक्त सिंटैक्स ने साफ़ किया कि आपको एक constant name, value और case-insensitive परिभाषित करना होगा।

निम्न उदाहरण आपको PHP constant को बेहतर से समझने में मदद करेगा।

ऊपर के syntax में आपको समझ आया की आपको constant name , constant की वैल्यू और case-insensitive परिभाषित करना होता हैं ।

चलिए दिए गए PHP constant के example में आपको आसानी से PHP constant को समझ सकते हैं ।

Example


<?php
define("LEARN", "Learn on technosmarter.com!");
echo LEARN ;
?>
		
		
Run

ऊपर दिए गए example में में, डिक्लेअर और डिफाइन किया हैं ।

Constant का नाम - LEARN

Constant की वैल्यू -Learn on technosmarter.com!

case-insensitive - case-insensitive= By default false ही होता हैं । आप True देकर case-insensitive को enable कर सकते हैं ।

जब हम PHP script को execute करते हैं , तो यहाँ constant की value को display करता हैं ।"Learn on technosmarter.com!" देता है।

जैसे की हम पहले भी discuss कर चुके हैं कि constant global स्कोप की functionality रखते हैं । कांस्टेंट ग्लोबल होते हैं जो की कम्पलीट PHP स्क्रिप्ट को क्रॉस कर सकते हैं ।

चलिए अब हम एक अलग example क्रिएट करते हैं ।
' निचे दिए गए example में हम constant को declare & डिफाइन करते हैं ।Constant को हम define() फंक्शन में define करते हैं । इसके बाद, हम एक फंक्शन study() बनाएंगे और constant की-वैल्यू प्राप्त करेंगे (कांस्टेंट को key-value pair के रूप में define किया गया है)।Key आपको constant की वैल्यू प्राप्त करने में मदद करेगी।

Example


<?php
define("LEARN", "Learn on technosmarter.com!");

function study() {
    echo LEARN;
}
 
study();
?
>
Run

ऊपर दिए गए उदाहरण में, हमने constant value को डिफाइन किया हैं उसके साथ साथ ही हमे एक function study() भी बनाया हैं । जब हमें फंक्शन के द्वारा key-value मिलती है तो यह constant की वैल्यू देती है "Learn on technosmarter.com!" आउटपुट मिलता हैं । इस उदाहरण में साबित होता हैं की constant ग्लोबल स्कोप की functionality रखते हैं । क्योंकि हमने फ़ंक्शन के बाहर constant को define किया है और फंक्शन के अंदर constant को यूज किया हैं । यदि constants ग्लोबल न होते हो वे एक error देते ।

जैसा कि आप जानते हैं, constants default रूप से case-sensitive होते हैं। हम उन्हें case-insensitive बना सकते हैं। Constant को case-insensitive बनाने के लिए हमें case-insensitive को true करना होता हैं । चलिए एक example से समझते हैं।

Example


<?php
define("LEARN", "Learn on technosmarter.com!",true);
echo learn ;
?>
		
		
Output-
 

Learn on technosmarter.com!

ऊपर के उदाहरण में, हमने constant case को case-insensitive बना दिया क्योंकि -

1. हमने constant के नाम को बड़े अक्षरो(uppercase letter) "LEARN" में define किया हैं ।

2. हमें lowercase key-value "learn" का उपयोग करके कांस्टेंट की वैल्यू मिल जाती हैं ।

इस का मतलब ये हुए की कांस्टेंट case-insensitive होते हैं ।

Constants और variables के बीच अंतर| Difference between constants and variables

Constants और variables में बहुत अंतर होता हैं ।
1.Constants कभी भी $ चिन्ह से शुरू नहीं होते हैं लेकिन variables को $ चिन्ह के साथ declare किया जाता है। Constant - learn , Variable - $learn

2.Default रूप से, constant के पास ग्लोबल स्कोप होता है। Constant complete PHP स्क्रिप्ट को cross कर सकते हैं लेकिन variables ग्लोबल दायरे(Global scrope ) में नहीं होते हैं। वेरिएबल को ग्लोबल बनाया जा सकते हैं ।

3. यदि constant की value डिफाइन किया जाता है, तो execute के समय वैल्यू को नहीं बदला जा सकता है।परन्तु PHP स्क्रिप्ट का यूज करके डिफाइन किये हुए variable की वैल्यू को execute के टाइम बदला जा सकता हैं।

4. यदि variable function के बाहर डिफाइन किए गए हैं और आप फ़ंक्शन के तहत(inside) use करना चाहते हैं तो वहां पर एक error मिलती हैं । क्युकी वेरिएबल ग्लोबल स्कोप की functionality नहीं रखते हैं।

 
    
    <?php
   $x=10; 
   
   function myTest() 
   
   {
   echo $x; 
   
   } 
   
   myTest();
?>
    
      

ऊपर के उदाहरण में, हमने फ़ंक्शन के बाहर variable को declare और define किया हैं ।उसके बाद हम वेरिएबल को फंक्शन के अंदर use करते हैं तो एक error मिलती हैं । क्युकी वेरिएबल ग्लोबल स्कोप की functionality नहीं रखते हैं ।

 
      Notice: Undefined variable: x in C:xampphtdocsPHPconstant.php on line 7
      

By default variables ग्लोबल स्कोप में नहीं आते जबकि constans ग्लोबल स्कोप की functionality रखते हैं । चलिए एक example कांस्टेंट के लिए भी करते हैं ।

 
    
    <?php
 define("x",10);
   function myTest() 
   
   {
   echo x; 
   
   } 
   
   myTest();
?>
    
      
Output-
 
      
      10
      

इसलिये! constant ग्लोबल होते हैं क्युकी फंक्शन के बहार define करने पर भी हम फंक्शन के अंदर आसानी से यूज कर सकते हैं इसमें वेरिएबल की तरह कोई भी error नहीं आती हैं ।

हम variables को भी ग्लोबल बना सकते हैं । वेरिएबल को ग्लोबल बनाने के लिए हमें global keyword का use करते हैं

  
<?php        
$a=10;    
$b=20;


function test()
{
 global $a ,$b,$c; 
 $c=$a+$b;
   
} 

test();
echo $c;

?
?>

Output:
 
30

आशा है कि! अब आप constant और variable समझ गए होंगे ।

Recommended Posts:-