पिछल tutorial में हमने if condition in Hindi, if else statements in Hindi और nested ifelse statements के बारे में सीखा था ।इस tutorial में, हम PHP switch case statements के बारे में सीखेंगे ।
जैसा की nested ifelse statements में आपने देखा होगा की उसमे हम बहुत सारी conditions और statements लेते हैं तो वो सभी बहुत complex(कोड करने में कठिन होता हैं) हो जाता हैं।
Nested ifelse statements in Hindi में , तो आप कई कोड ब्लॉक (code of block)बनाते हैं। यह कोड करने के लिए बहुत ही difficult हो जाता हैं इस complexity(confusion,कोड करने में कठिन) से बचने के लिए हम Switch Statements का उपयोग करते हैं। जैसे की आप Nested ifelse में बहुत सारी कंडीशन को बनते थे ऐसे ही Switch Statement में case बनाते हैं पर इसमें आपको कोई कंडीशन बनाने की जरूरत नहीं पड़ती हैं इसमें case के द्वारा ही हम अपना कोई भी कोड execute करा सकते हैं । तो switch case statements का ये एक अच्छा benefit हो जाता हैं और ये nested ifelse statements से भी आसान होता हैं ।
छोटे level तक तो हम nested if else का use कर सकते हैं परन्तु यदि condition और भी ज्यादा आ जाती हैं तो कोड करने में बहुत कठिन हो जाता हैं।
Switch Statements PHP में सर्वश्रेष्ठ(best) conditional structure में से एक है।
यदि आपको Switch Statements को अच्छे से समझना हैं तो आपको nested ifelse का पता होना जरूरी हैं की nested ifelse में हम किस तरह बार बार कंडीशन बनाते हैं फिर कोड execute कराते हैं पर यहाँ सिर्फ case बनाने पड़ते हैं जो की nested if else statements से बहुत आसान हैं ।
Switch case statements का उपयोग nested ifelse के कोड ऑफ़ ब्लॉक(code of block) से बचने के लिए किया जाता है। Switch statements को execute(Run होना ,आउटपुट मिलना ) करने के लिए कई codes में से किसी एक को execute करने के लिए उपयोग किया जाता है। स्विच केस स्टेटमेंट case पर निर्भर करते हैं, यदि केस मैच(match) हो जाता हैं , तो उस केस का कोड execute हो जाता हैं ।और यदि कोई केस मैच नहीं करता है, तो default कोड execute होता है, इसे Switch case statements कहा जाता है।
switch (expression)
{
case 1:
code to be executed if the expression is matched
break;
case 2:
code to be executed if the expression is matched
break;
default:
code to be executed
if expression does not match with any case.
}
ऊपर दिए गए सिंटेक्स में , आप देख सकते हैं कि यदि केस 1 का मैच हो जाता हैं तो पहला स्टेटमेंट चलेगा (केस 1 का कोड execute होगा)। यदि दूसरा case मैच होता है तो दूसरा स्टेटमेंट चलेगा (केस 2 का कोड execute होगा) और यदि कोई केस मैच नहीं होते हैं तो default कोड execute हो जाता हैं ।ये सब आपको उदाहरण से अच्छे से समझ आजायेगा चलिए PHP switch case statements के उदाहरण से समझते हैं ।
निचे दए गए उदाहरण में हम एक variable बनाते हैं। उस variable में, हम value डिफाइन करते हैं । value डिफाइन करने के बाद,उसे वेरिएबल को हम स्विच(switch) में पास(as expression) कर देता हैं । जिसे हम switch expression भी कहते हैं । आप expression के अनुसार केस बना सकते हैं।जो भी केस एक्सप्रेशन से मैच हो जायेगा उस केस का कोड execute हो जायेगा ।
<?php
$day="Fri";
switch ($day)
{
case "Sun":
echo "Today is Sunday";
break;
case "Wed":
echo "Today is Wednesday ";
break;
case "Tue":
echo "Today is Tuesday";
break;
case "Thu":
echo "Today is Thursday";
break;
case "Fri":
echo "Today is Friday";
break;
case "Sat":
echo "Today is Saturday";
break;
case "Sun":
echo "Today is Sunday";
break;
default:
echo "Which day is this ?";
}
?>
Run
ऊपर दिए गए उदाहरण में, हमने पूरे सप्ताह(week) के लिए स्विच केस बनाया। वेरिएबल में, हमने स्ट्रिंग(string) के रूप में "Fri"(Short of friday ) एक वेरिएबल वैल्यू को डिफाइन किया हैं । उस वेरिएबल को हम स्विच एक्सप्रेशन (expression)में use किया हैं ।केस की एक्सप्रेशन से मेल(match) खाने वाले किसी भी केस को execute किया जाता हैं ये हमने ऊपर भी पढ़ा हैं ।
इस example में वेरिएबल की वैल्यू "Fri" हैं और हमने "Fri" के लिए एक केस बनाया हुआ हैं केस "Fri" तो "Fri" वाला केस मैच हो रहा हैं तो "Fri" वाले केस का कोड execute हो गया हैं जैसे की आपने run करके भी देखा होगा ऊपर के उदहारण में ।यदि वेरिएबल की वैल्यू "Sun" हो तो केस "Sun" में जितना भी कोड होगा execute हो जायेगा । यदि कोई भी केस मैच नहीं होता तो डिफ़ॉल्ट(default) केस चलेगा ।
चलिए एक उदाहरण क्रिएट करते हैं की जब कोई भी केस switch expression से मैच नहीं करता हैं ।
<?php
$a = 10;
$b =9;
$c=78;
switch($c){
case "a":
echo "a";
break;
case "b":
echo "b";
break;
default:
echo "Default code will be executed ";
break;
}
?>
Default code will be executed
PHP Switch case statements में, यदि केस मैच हो जाता हैं , तो केस का code execute हो जाता हैं । यदि कोई केस मैच नहीं होता , तो डिफ़ॉल्ट कोड execute हो जाता हैं ।ये ही इसका concept हैं ।