Call By Value और Call By Reference: PHP में फंक्शन को दो तरीके से कॉल किया जा सकता है:
- Call by Value
- Call by Reference
इन दोनों तरीकों में फंक्शन पैरामीटर को पास करने और उनकी values को हैंडल करने का तरीका अलग होता है। आइए इसे विस्तार से समझते हैं।
Call by Value:
Call by Value में फंक्शन को पैरामीटर की एक कॉपी पास की जाती है। इसका मतलब है कि फंक्शन के अंदर जो भी बदलाव किए जाते हैं, वे केवल उस कॉपी पर लागू होते हैं, न कि original value पर।
Call by Value का व्यवहार
- फंक्शन पैरामीटर की कॉपी के साथ काम करता है।
- Original variable में कोई बदलाव नहीं होता।
Call by Value का Example
<?php
function changeValue($num) {
$num += 10; // केवल कॉपी वैल्यू को बदला जाएगा
echo "Function के अंदर की वैल्यू: $num<br>";
}
$original = 20;
changeValue($original);
echo "Original वैल्यू: $original"; // Original वैल्यू नहीं बदलेगी
/*Output
Function के अंदर की वैल्यू: 30
Original वैल्यू: 20
*/
?>PHPCall by Reference:
Call by Reference में Functions को original variable का reference (पता) पास किया जाता है। इसका मतलब है कि फंक्शन के अंदर किए गए बदलाव original value को भी प्रभावित करेंगे।
Call by Reference का व्यवहार
- Original variable में भी बदलाव होता है।
- फंक्शन parameter के साथ original memory location पर काम करता है।
Call by Reference का Example
<?php
function changeValue(&$num) { // '&' रेफरेंस को दर्शाता है
$num += 10; // Original वैल्यू को बदला जाएगा
echo "Function के अंदर की वैल्यू: $num<br>";
}
$original = 20;
changeValue($original);
echo "Original वैल्यू: $original"; // Original वैल्यू बदल जाएगी
/*
Output
Function के अंदर की वैल्यू: 30
Original वैल्यू: 30
*/
?>PHPCall by Value और Call by Reference के बीच अंतर:
| Parameter | Call by Value | Call by Reference |
|---|---|---|
| Definition | पैरामीटर की कॉपी पास की जाती है। | Original variable का reference पास किया जाता है। |
| Effect on Original Variable | Original variable पर कोई असर नहीं होता। | Original variable बदल जाता है। |
| Syntax | $parameter | &$parameter |
| Use Case | जब original value को सुरक्षित रखना हो। | जब original value को modify करना हो। |
Use Case:
Call by Value:
- जब आप चाहते हैं कि फंक्शन original value को modify न करे।
- Example: Calculations, Data Processing जहां original data को सुरक्षित रखना हो।
Call by Reference:
- जब आप चाहते हैं कि फंक्शन original value को बदल दे।
- Example: जब आपको किसी variable को update करना हो, जैसे configuration settings.
Conclusion:
- Call by Value: पैरामीटर की कॉपी के साथ काम करता है, जिससे original value सुरक्षित रहती है।
- Call by Reference: original variable के साथ काम करता है, जिससे original value बदल जाती है।
दोनों का उपयोग उनकी जरूरतों के आधार पर किया जाता है।

Welcome to HindiTutorials, your go-to platform for learning and mastering concepts in Hindi! Our mission is to make education accessible and simple for everyone by providing high-quality tutorials on programming, technology, and various other topics.