PHP पाठ – पाठ 8-2 – ऑपरेटर switch।
पिछले पाठ में हमने if ऑपरेटर के बारे में सीखा था। यह हमें किसी शर्त (condition) की सत्यता की जांच करने और परिणाम के अनुसार अलग-अलग कार्य करने की अनुमति देता है।
अब कल्पना करें कि हमें दस अलग-अलग स्थितियों की जांच करनी है और हर स्थिति के लिए अलग-अलग कार्य चलाने हैं।
हम यह सब if का उपयोग करके कर सकते हैं:
<?php if($x == 1){ // कार्य } if($x == 2){ // कार्य } if($x == 3){ // कार्य } if($x == 4){ // कार्य } if($x == 5){ // कार्य } if($x == 6){ // कार्य } if($x == 7){ // कार्य } if($x == 8){ // कार्य } if($x == 9){ // कार्य } if($x == 10){ // कार्य } ?>
यह कोड चलेगा, लेकिन इतनी सारी शर्तें लिखने का बेहतर तरीका है switch ऑपरेटर का उपयोग करना।
PHP switch
switch ऑपरेटर किसी एक अभिव्यक्ति (expression) को कई संभावित मानों से तुलना करता है। आइए ऊपर के उदाहरण को switch के साथ फिर से लिखें:
<?php switch ($x){ case 1: // कार्य break; case 2: // कार्य break; case 3: // कार्य break; case 4: // कार्य break; case 5: // कार्य break; case 6: // कार्य break; case 7: // कार्य break; case 8: // कार्य break; case 9: // कार्य break; case 10: // कार्य break; default: // कार्य जब कोई अन्य शर्त पूरी नहीं होती } ?>
जैसा कि देखा जा सकता है, यह कोड भी वही काम करता है, लेकिन अधिक सुव्यवस्थित है।
यहाँ default
का उपयोग तब किया जाता है जब $x किसी भी केस (case) से मेल नहीं खाता (1 से 10 के बीच नहीं होता)।
Switch संरचना का विश्लेषण
पहले आता है switch
शब्द, फिर गोल कोष्ठकों में वह अभिव्यक्ति जिसे जांचना है।
यह अभिव्यक्ति संख्या या स्ट्रिंग दोनों हो सकती है:
<?php switch ($x){ case 'Hello': // कार्य break; case 'Bye': // कार्य break; } ?>
इसके बाद कर्ली ब्रैकेट्स के अंदर सभी संभावित मान (cases) लिखे जाते हैं।
प्रत्येक case
के बाद दो बिंदु (:
) लगते हैं और उसके बाद वह कोड लिखा जाता है जो चलना चाहिए।
हर केस के बाद break;
लिखना न भूलें — यह स्विच ब्लॉक को वहीं रोक देता है।
<?php switch ($x){ case 'Hello': // संभावित मान print $x; // कार्य break; // स्विच समाप्त case 2: $x++; break; } ?>
सारांश:
- हर
case
के अंत मेंbreak;
लिखना आवश्यक है, ताकि बाकी केस न चलें। default
के बादbreak
की ज़रूरत नहीं होती, क्योंकि यह आख़िरी केस होता है।
ब्लॉक-डायग्राम उदाहरण
अब एक उदाहरण लें — हमारे पास सप्ताह की शुरुआत से लेकर अब तक के दिनों की संख्या है। हम पता लगाना चाहते हैं कि आज कौन सा दिन है:
<?php // $D — सोमवार से गिने गए कुल दिन $x = $D % 7; switch ($x){ case 1: print 'सोमवार'; break; case 2: print 'मंगलवार'; break; case 3: print 'बुधवार'; break; case 4: print 'गुरुवार'; break; case 5: print 'शुक्रवार'; break; case 6: print 'शनिवार'; break; case 7: print 'रविवार'; break; } ?>
इस प्रकार, switch ऑपरेटर तब उपयोगी होता है जब आपको किसी वैरिएबल के कई संभावित मानों के लिए अलग-अलग कार्य चलाने होते हैं।