पीएचपी कार्य
PHP की वास्तविक शक्ति इसके कार्यों से आती है।
PHP में 1000 से अधिक अंतर्निहित कार्य हैं, और इसके अतिरिक्त आप अपने स्वयं के कस्टम फ़ंक्शन बना सकते हैं।
PHP बिल्ट-इन फंक्शन्स
PHP में 1000 से अधिक अंतर्निहित कार्य हैं जिन्हें किसी विशिष्ट कार्य को करने के लिए सीधे स्क्रिप्ट के भीतर से कॉल किया जा सकता है।
PHP में अंतर्निहित कार्यों के संपूर्ण अवलोकन के लिए कृपया हमारा PHP संदर्भ देखें ।
PHP उपयोगकर्ता परिभाषित कार्य
अंतर्निहित PHP फ़ंक्शंस के अलावा, अपने स्वयं के फ़ंक्शन बनाना संभव है।
- एक फंक्शन स्टेटमेंट्स का एक ब्लॉक होता है जिसे एक प्रोग्राम में बार-बार इस्तेमाल किया जा सकता है।
- पृष्ठ लोड होने पर कोई फ़ंक्शन स्वचालित रूप से निष्पादित नहीं होगा।
- फ़ंक्शन को कॉल करके एक फ़ंक्शन निष्पादित किया जाएगा।
PHP में यूजर डिफाइंड फंक्शन बनाएं
उपयोगकर्ता द्वारा परिभाषित फ़ंक्शन घोषणा शब्द से शुरू होती है function
:
वाक्य - विन्यास
function functionName()
{
code to be executed;
}
नोट: फ़ंक्शन नाम एक अक्षर या अंडरस्कोर से शुरू होना चाहिए। फ़ंक्शन नाम केस-संवेदी नहीं हैं।
युक्ति: फ़ंक्शन को एक ऐसा नाम दें जो दर्शाता है कि फ़ंक्शन क्या करता है!
नीचे दिए गए उदाहरण में, हम "writeMsg ()" नाम का एक फंक्शन बनाते हैं। ओपनिंग कर्ली ब्रेस ( { ) फ़ंक्शन कोड की शुरुआत को इंगित करता है, और क्लोजिंग कर्ली ब्रेस ( } ) फ़ंक्शन के अंत को इंगित करता है। फ़ंक्शन "हैलो वर्ल्ड!" आउटपुट करता है। फ़ंक्शन को कॉल करने के लिए, बस उसका नाम और उसके बाद कोष्ठक () लिखें:
उदाहरण
<?php
function writeMsg() {
echo "Hello world!";
}
writeMsg(); // call the function
?>
PHP फ़ंक्शन तर्क
तर्कों के माध्यम से सूचनाओं को कार्यों तक पहुँचाया जा सकता है। एक तर्क एक चर की तरह है।
कोष्ठक के अंदर फ़ंक्शन नाम के बाद तर्क निर्दिष्ट किए जाते हैं। आप जितने चाहें उतने तर्क जोड़ सकते हैं, बस उन्हें अल्पविराम से अलग करें।
निम्न उदाहरण में एक तर्क ($fname) के साथ एक फ़ंक्शन है। जब परिवारनाम () फ़ंक्शन को कॉल किया जाता है, तो हम एक नाम (जैसे जानी) भी पास करते हैं, और नाम का उपयोग फ़ंक्शन के अंदर किया जाता है, जो कई अलग-अलग पहले नामों को आउटपुट करता है, लेकिन एक समान अंतिम नाम:
उदाहरण
<?php
function familyName($fname) {
echo "$fname Refsnes.<br>";
}
familyName("Jani");
familyName("Hege");
familyName("Stale");
familyName("Kai Jim");
familyName("Borge");
?>
निम्नलिखित उदाहरण में दो तर्क ($ fname और $year) के साथ एक फ़ंक्शन है:
उदाहरण
<?php
function familyName($fname, $year) {
echo "$fname Refsnes. Born in $year <br>";
}
familyName("Hege", "1975");
familyName("Stale", "1978");
familyName("Kai Jim", "1983");
?>
PHP एक ढीली टाइप की जाने वाली भाषा है
ऊपर के उदाहरण में, ध्यान दें कि हमें PHP को यह बताने की आवश्यकता नहीं है कि वेरिएबल कौन सा डेटा प्रकार है।
PHP स्वचालित रूप से एक डेटा प्रकार को उसके मूल्य के आधार पर चर से जोड़ता है। चूंकि डेटा प्रकार सख्त अर्थों में सेट नहीं होते हैं, आप बिना किसी त्रुटि के एक स्ट्रिंग को पूर्णांक में जोड़ने जैसे काम कर सकते हैं।
PHP 7 में, प्रकार की घोषणाएँ जोड़ी गईं। यह हमें फ़ंक्शन घोषित करते समय अपेक्षित डेटा प्रकार निर्दिष्ट करने का विकल्प देता है, और घोषणा को जोड़कर strict
, डेटा प्रकार बेमेल होने पर यह "घातक त्रुटि" फेंक देगा।
निम्नलिखित उदाहरण में हम बिना उपयोग किए एक संख्या और एक स्ट्रिंग दोनों को फ़ंक्शन में भेजने का प्रयास करते हैं strict
:
उदाहरण
<?php
function addNumbers(int $a, int $b) {
return $a
+ $b;
}
echo addNumbers(5, "5 days");
// since strict is NOT enabled "5 days" is
changed to int(5), and it will return 10
?>
निर्दिष्ट करने के लिए strict
हमें सेट करने की आवश्यकता है declare(strict_types=1);
। यह PHP फ़ाइल की पहली पंक्ति पर होना चाहिए।
निम्नलिखित उदाहरण में हम एक संख्या और एक स्ट्रिंग दोनों को फ़ंक्शन में भेजने का प्रयास करते हैं, लेकिन यहां हमने strict
घोषणा को जोड़ा है:
उदाहरण
<?php declare(strict_types=1); // strict requirement
function
addNumbers(int $a, int $b) {
return $a + $b;
}
echo addNumbers(5, "5
days");
// since strict is enabled and "5 days" is not an integer, an
error will be thrown
?>
strict
घोषणा चीजों को इच्छित तरीके से उपयोग करने के लिए मजबूर करती है ।
PHP डिफ़ॉल्ट तर्क मान
निम्न उदाहरण दिखाता है कि डिफ़ॉल्ट पैरामीटर का उपयोग कैसे करें। यदि हम फ़ंक्शन को बिना तर्क के सेटहाइट () कहते हैं, तो यह डिफ़ॉल्ट मान को तर्क के रूप में लेता है:
उदाहरण
<?php declare(strict_types=1); // strict requirement
function setHeight(int $minheight = 50) {
echo "The height is : $minheight <br>";
}
setHeight(350);
setHeight(); // will use the default value of 50
setHeight(135);
setHeight(80);
?>
PHP फ़ंक्शन - रिटर्निंग मान
किसी फ़ंक्शन को एक मान वापस करने के लिए, return
कथन का उपयोग करें:
उदाहरण
<?php declare(strict_types=1); // strict requirement
function sum(int $x,
int $y) {
$z = $x + $y;
return $z;
}
echo "5 + 10 = " . sum(5, 10) . "<br>";
echo "7 + 13 = " . sum(7, 13) . "<br>";
echo "2 + 4 = " . sum(2, 4);
?>
PHP रिटर्न टाइप डिक्लेरेशन
PHP 7 return
स्टेटमेंट के लिए टाइप डिक्लेरेशन को भी सपोर्ट करता है। फ़ंक्शन तर्कों के लिए प्रकार की घोषणा की तरह, सख्त आवश्यकता को सक्षम करके, यह एक प्रकार की बेमेल पर "घातक त्रुटि" फेंक देगा।
फ़ंक्शन रिटर्न के लिए एक प्रकार घोषित करने के लिए, फ़ंक्शन की घोषणा करते समय एक कोलन (
) और ओपनिंग कर्ली ( ) ब्रैकेट :
से ठीक पहले टाइप करें ।{
निम्नलिखित उदाहरण में हम फ़ंक्शन के लिए रिटर्न प्रकार निर्दिष्ट करते हैं:
उदाहरण
<?php declare(strict_types=1); // strict requirement
function addNumbers(float
$a, float $b) : float {
return $a + $b;
}
echo addNumbers(1.2, 5.2);
?>
आप तर्क प्रकारों की तुलना में एक अलग रिटर्न प्रकार निर्दिष्ट कर सकते हैं, लेकिन सुनिश्चित करें कि रिटर्न सही प्रकार है:
उदाहरण
<?php declare(strict_types=1); // strict requirement
function addNumbers(float
$a, float $b) : int {
return (int)($a + $b);
}
echo addNumbers(1.2, 5.2);
?>
संदर्भ द्वारा तर्क पारित करना
PHP में, तर्क आमतौर पर मूल्य द्वारा पारित किए जाते हैं, जिसका अर्थ है कि फ़ंक्शन में मान की एक प्रति का उपयोग किया जाता है और फ़ंक्शन में पारित चर को बदला नहीं जा सकता है।
जब एक फ़ंक्शन तर्क को संदर्भ द्वारा पारित किया जाता है, तो तर्क में परिवर्तन उस चर को भी बदल देता है जिसे पारित किया गया था। फ़ंक्शन तर्क को संदर्भ में बदलने के लिए, &
ऑपरेटर का उपयोग किया जाता है:
उदाहरण
एक चर अद्यतन करने के लिए पास-दर-संदर्भ तर्क का उपयोग करें:
<?php
function add_five(&$value) {
$value += 5;
}
$num
= 2;
add_five($num);
echo $num;
?>