Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> PHP

PHP रेफरेंसेस (References) - प्रतीक तालिका उपनाम


परिचय

PHP में, रेफरेंसेस (References) विभिन्न नामों से एक ही वेरिएबल सामग्री तक पहुँचने में सक्षम बनाते हैं। वे C/C++ में पॉइंटर्स की तरह नहीं हैं क्योंकि उनका उपयोग करके अंकगणितीय संक्रियाएँ करना संभव नहीं है। C/C++ में, वे वास्तविक मेमोरी पते हैं। PHP में इसके विपरीत, वे प्रतीक तालिका उपनाम (symbol table aliases) हैं। PHP में, वेरिएबल नाम और वेरिएबल सामग्री अलग हैं, इसलिए वही सामग्री अलग-अलग नामों से हो सकती है। एक रेफरेंस वेरिएबल मूल वेरिएबल को & साइन उपसर्ग करके बनाया जाता है। इसलिए $b = &$a का अर्थ है कि $b, $a का एक रेफरेंस वेरिएबल है।

रेफरेंस द्वारा असाइनमेंट (Assign By Reference)

उदाहरण 1: दो वेरिएबल्स एक ही मान को संदर्भित करते हैं

<?php 
$var1 = 10; 
$var2 = &$var1; 
echo "$var1 $var2\n"; 
$var2 = 20; 
echo "$var1 $var2\n"; 
?>

आउटपुट

10 10 
20 20

एक में मान परिवर्तन दूसरे में भी प्रतिबिंबित होगा।

यदि आप किसी अपरिभाषित वेरिएबल को रेफरेंस द्वारा असाइन, पास, या रिटर्न करते हैं, तो यह बन जाएगा। फ़ंक्शन के अंदर ग्लोबल घोषित वेरिएबल को रेफरेंस असाइन करना, रेफरेंस केवल फ़ंक्शन के अंदर दिखाई देगा। जब किसी मान को foreach स्टेटमेंट में रेफरेंस वाले वेरिएबल को असाइन किया जाता है, तो रेफरेंस भी संशोधित होते हैं।

उदाहरण 2: foreach में रेफरेंस संशोधन

<?php 
$arr = [1, 2, 3, 4, 5]; 
$i = &$ref; 
foreach ($arr as $i) 
    echo $i * $i, "\n"; 
echo "ref = " . $ref; 
?>

आउटपुट

1 
4 
9 
16 
25 
ref = 5

$ref का मान सरणी में अंतिम तत्व का मान संग्रहीत करता है।

उदाहरण 3: सरणी तत्वों के रूप में रेफरेंस

निम्न उदाहरण में, सरणी तत्व सरणी आरंभीकरण से पहले घोषित व्यक्तिगत वेरिएबल्स के रेफरेंस हैं। यदि तत्व संशोधित होता है, तो वेरिएबल का मान भी बदल जाता है।

<?php 
$a = 10; 
$b = 20; 
$c = 30; 
$arr = array(&$a, &$b, &$c); 
for ($i = 0; $i < 3; $i++) 
    $arr[$i]++; 
echo "$a $b $c"; 
?>

आउटपुट

11 21 31

$a, $b और $c के मान भी बढ़ जाते हैं।

  1. - PHP में ग्लोबल वेरिएबल कैसे घोषित करें

    PHP में ग्लोबल वेरिएबल एक **ग्लोबल वेरिएबल** प्रोग्राम के किसी भी भाग में एक्सेस की जा सकती है। हालांकि, इसे **संशोधित** करने के लिए, उस फ़ंक्शन में स्पष्ट रूप से global कीवर्ड का उपयोग करके ग्लोबल घोषित किया जाना चाहिए जिसमें इसे संशोधित किया जाना है। उदाहरण 1: बेसिक ग्लोबल वेरिएबल <?php $val

  1. - PHP में filter_input() फंक्शन

    विवरण filter_input() फंक्शन एक्सटर्नल वेरिएबल का नाम प्राप्त करता है और वैकल्पिक रूप से इसे फिल्टर करता है। सिंटैक्स filter_input(type, var, filtername, options) पैरामीटर्स type − चेक करने के लिए पांच प्रकार के इनपुट हैं यानी INPUT_GET, INPUT_POST, INPUT_COOKIE, INPUT_SERVER, या INPUT_ENV। var −

  1. - PHP में extract() फंक्शन

    PHP में extract() फंक्शन सरणी से वर्तमान सिंबल टेबल में चर आयात करता है। यह सफलतापूर्वक निकाले गए चरों की संख्या लौटाता है। सिंटैक्स extract(arr, rules, prefix) पैरामीटर्स arr - निर्दिष्ट सरणी। rules - निर्दिष्ट करता है कि अमान्य चर नाम से कैसे निपटें। संभावित मान: EXTR_OVERWRITE - डिफ़ॉल्ट। टकर