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

PHP फ़ंक्शन तर्क

परिचय

PHP में एक फ़ंक्शन को तर्क के रूप में पर्यावरण/स्क्रिप्ट को कॉल करने से इनपुट स्वीकार करने के लिए परिभाषित किया जा सकता है। ये तर्क फ़ंक्शन के नाम के सामने कोष्ठक के अंदर अल्पविराम से अलग सूची के रूप में दिए गए हैं। ध्यान दें कि किसी फ़ंक्शन को कॉल करते समय, उसे उतने ही तर्क दिए जाने चाहिए।

PHP मान, संदर्भ, डिफ़ॉल्ट मान के साथ तर्कों और तर्कों की चर संख्या को पारित करके फ़ंक्शन को कॉल करने का समर्थन करता है।

तर्कों के साथ कार्य करें

निम्नलिखित उदाहरण में, एक फ़ंक्शन को दो औपचारिक तर्कों के साथ परिभाषित किया गया है। जब इस फ़ंक्शन को मान द्वारा तर्क पारित करके कहा जाता है। फ़ंक्शन के तर्क इसके स्थानीय चर बन जाते हैं। इसलिए, किसी फ़ंक्शन के अंदर तर्क के मान में कोई भी परिवर्तन इसके बाहर प्रतिबिंबित नहीं होता है।

यहां, फ़ंक्शन के अंदर $x का मान बदल दिया जाता है, लेकिन यदि हम कॉल टू फंक्शन के बाद इसके मूल्य की जांच करते हैं, तो यह नहीं बदला है

उदाहरण

<?php
function add($x, $y){
   $x= $x+$y ;
   echo $x . "\n";
}
$x=10;
$y=20;
add($x,$y);
//outside function $x has previous value.
echo $x;
?>

आउटपुट

यह निम्नलिखित परिणाम देगा। -

30
10

कार्य करने के लिए सरणी पास करना

निम्नलिखित उदाहरण में, ऐड () फ़ंक्शन को सरणी को तर्क के रूप में प्राप्त करने के लिए परिभाषित किया गया है। फ़ंक्शन के अंदर, सरणी तत्वों को फ़ोरैच लूप का उपयोग करके ट्रैवर्स किया जाता है

उदाहरण

<?php
function add($arr){
   $sum=0;
   foreach ($arr as $i){
      $sum+=$i;
   }
   echo "sum = " .$sum;
}
add(array(1,2,3));
?>

आउटपुट

यह निम्नलिखित परिणाम देगा। -

sum = 6

संदर्भ द्वारा तर्क पारित करना

मान द्वारा फ़ंक्शन के तर्कों को मान पास किए जाते हैं। इसलिए, फ़ंक्शन के अंदर तर्क के मान में परिवर्तन इसके बाहर प्रतिबिंबित नहीं होते हैं। जब तर्कों को संदर्भ द्वारा पारित किया जाता है, तो तर्क के बाहर के मूल्य में परिवर्तन किए जाते हैं।

संदर्भ द्वारा मूल्य प्राप्त करने के लिए, तर्क का नाम $ प्रतीक से पहले होना चाहिए

उदाहरण

<?php
function swap(&$x, &$y){
   $t=$x;
   $x=$y;
   $y=$t;
   echo "inside function x=$x y=$y\n";
}
$x=5;
$y=7;
echo "before calling function x=$x y=$y\n";
swap($x, $y);
echo "after calling function x=$x y=$y\n";
?>

आउटपुट

यह निम्नलिखित परिणाम देगा। -

before calling function x=5 y=7
inside function x=7 y=5
after calling function x=7 y=5

चर $x और $y के मान स्वैप () फ़ंक्शन में आपस में बदल दिए जाते हैं। चूंकि, चर संदर्भ द्वारा पारित किए जाते हैं, चर फ़ंक्शन के बाहर भी संशोधित मान दिखाते हैं

संकेत टाइप करें (घोषणाएं टाइप करें)

PHP वास्तव में एक गतिशील रूप से टाइप की जाने वाली भाषा है। इसलिए, एक वेरिएबल को उसके प्रकार (जैसे C/C++ या Java में) के साथ घोषित करना आवश्यक नहीं है। हालांकि, किसी फ़ंक्शन में तर्कों की घोषणा प्रकार पार्सर को फ़ंक्शन को दिए गए गलत डेटा प्रकारों का पता लगाने की अनुमति देता है।

सिंटैक्स

//define a function with type hints
function myfunction(type $arg1, type $arg2){
   ..
   ..
}

स्केलर प्रकार, सरणी, वर्ग/इंटरफ़ेस, चलने योग्य और ऑब्जेक्ट सहित सभी मानक PHP डेटा प्रकार फ़ंक्शन घोषणा में प्रकार संकेत प्रदान करने के लिए मान्य प्रकार हैं

उदाहरण

<?php
function add(...$numbers){
   $ttl=0;
   foreach ($numbers as $num){
      $ttl=$ttl+$num;
   }
   return $ttl;
}
$total=add(10,15,20);
echo "total= $total\n";
echo "total=". add(1,2,3,4,5). "\n";
?>

आउटपुट

यह निम्नलिखित परिणाम देगा। -

total= 45
total=15

फ़ंक्शन को दिए गए तर्कों की सूची func_get_args() की सहायता से प्राप्त करना भी संभव है समारोह। हम पारित तर्कों की सूची में प्रत्येक मान को पार करने के लिए एक PHP लूप चला सकते हैं। उस स्थिति में फ़ंक्शन परिभाषा में औपचारिक तर्क नहीं होता है।

उदाहरण

<?php
function add (int $x, int $y){
   $z=$x+$y;
   echo "addition=$z\n";
}
add(10,20);
add(5.55, 6.66);
?>

आउटपुट

यह निम्नलिखित परिणाम देगा। -

addition=30
addition=11

ध्यान दें कि ऐड () फ़ंक्शन के लिए दूसरी कॉल में, फ़्लोट्स को तर्क के रूप में दिया जाता है, लेकिन फिर भी कोई त्रुटि/चेतावनी प्रदर्शित नहीं होती है। ऐसा इसलिए है क्योंकि PHP आंतरिक रूप से अतिरिक्त प्रदर्शन करने के लिए पूर्णांक में तैरती है। ऐसे स्वचालित प्रकार के रूपांतरण को रोकने के लिए, घोषणा . का उपयोग करें सख्त_प्रकार=1 . के साथ निर्माण करें

उदाहरण

<?php
declare(strict_types=1);
function add (int $x, int $y){
   $z=$x+$y;
   echo "addition=$z\n";
}
add(10,20);
add(5.55, 6.66);
?>

जोड़ने के लिए दूसरी कॉल () फ़ंक्शन अब अपवाद फेंक देगा -

आउटपुट

addition=30
PHP Fatal error: Uncaught TypeError: Argument 1 passed to add() must be of the type integer, float given

  1. पीएचपी मिनट () समारोह

    परिभाषा और उपयोग मिनट () फ़ंक्शन सरणी में सबसे कम तत्व देता है, या दो या दो से अधिक अल्पविराम से अलग किए गए मापदंडों में सबसे कम है। सिंटैक्स min ( array $values ) : mixed या min ( mixed $value1 [, mixed $... ] ) : mixed पैरामीटर Sr.No पैरामीटर और विवरण 1 मान यदि केवल एक पैरामीटर दिया गया है

  1. PHP अधिकतम () फ़ंक्शन

    परिभाषा और उपयोग अधिकतम () फ़ंक्शन सरणी में उच्चतम तत्व देता है, या दो या अधिक अल्पविराम से अलग किए गए मापदंडों में से उच्चतम देता है। सिंटैक्स max ( array $values ) : mixed या max ( mixed $value1 [, mixed $... ] ) : mixed पैरामीटर Sr.No पैरामीटर और विवरण 1 मान यदि केवल एक पैरामीटर दिया गया

  1. PHP लॉग 10 () फ़ंक्शन

    परिभाषा और उपयोग लॉग10 () फ़ंक्शन किसी संख्या के आधार-10 लघुगणक की गणना करता है। बेस-10 लघुगणक को सामान्य या सैंडर्ड एल्गोरिथम भी कहा जाता है। log10(x) फ़ंक्शन लॉग की गणना करता है10 एक्स। यह निम्नलिखित समीकरण द्वारा प्राकृतिक एल्गोरिथम से संबंधित है - लॉग 10 x=लॉगई x/लॉगई 10 ताकि लॉग 10 100=लॉ