सी इफ चे शॉर्ट फॉर्म. जर रचना बद्दल अधिक

संगणकावर व्हायबर 26.07.2019
संगणकावर व्हायबर

या लेखात आपण PHP मध्ये लॉजिकल ऑपरेटर्स आणि इफ कन्स्ट्रक्टचा वापर जवळून पाहू आणि ते लिहिण्याच्या वेगवेगळ्या पद्धतींबद्दल बोलू. प्रथम, तुमच्याकडे एकापेक्षा जास्त अटी असल्यास if construct सह कसे कार्य करायचे ते पाहू.

जर बांधकाम नेस्टेड केले जाऊ शकते:

0) जर($संख्या< 20) echo "Число больше нуля, но меньше двадцати!"; ?>

दोन्ही रचनांमधील प्रत्येक अटी पूर्ण झाल्यासच हा कोड परिणाम प्रदर्शित करेल. हे लिहिण्याचा आणखी एक मार्ग आहे:

0) आणि ($ संख्या< 20)) echo " Число больше нуля, но меньше двадцати!"; ?>

वापरण्यासाठी PHP लूप स्टेटमेंट कोणते लिहायचे ते परिस्थिती आणि तुमच्या वैयक्तिक पसंतींवर अवलंबून असते. मागील लेखात, आपण else कंस्ट्रक्ट वापरण्याचे नियम पाहिले. PHP मध्ये आणखी एक विशेष रचना आहे – अन्यथा जर .

त्यात if आणि else construct समाविष्ट आहे आणि ते खालीलप्रमाणे वापरले जाऊ शकते:

20) प्रतिध्वनी "संख्या वीस पेक्षा जास्त आहे!"; elseif($number > 10) echo "संख्या दहापेक्षा मोठी आहे!"; अन्यथा इको "ही संख्या खूप कमी दिसते..." ?>

हे PHP लूप ऑपरेटर कन्स्ट्रक्ट विविध सिंटॅक्स व्यतिरिक्त नवीन काहीही लागू करत नाही. त्याच प्रकारे, तुम्ही else construct वापरू शकता, त्यानंतर दुसरे if construct वापरू शकता.

PHP मध्ये विकसित होत असताना, तुम्ही कर्ली ब्रेसेसमध्ये बंद केलेल्या मानक कोड ब्लॉक्सच्या व्यतिरिक्त if किंवा while स्टेटमेंटमध्ये पर्यायी वाक्यरचना वापरू शकता. हे विशेषतः लोकप्रिय नाही, परंतु आम्ही शिफारस करतो की आपण त्याच्याशी परिचित व्हा:

जर तुम्हाला हा पर्याय अधिक चांगला वाटत असेल, तर ते मोकळ्या मनाने वापरा. यात कोणताही मूलभूत फरक नाही.

टर्नरी ऑपरेटर

रचना निरर्थक असल्यास पूर्ण वापरताना काही वेळा असतात. उदाहरणार्थ, वापरकर्त्याने कार्टमध्ये आयटम जोडले आहेत की नाही यावर अवलंबून व्हेरिएबलच्या आउटपुट मूल्यामध्ये आवश्यक शब्द बदलणे आवश्यक आहे:

0) $आउटपुट. = "माल आहेत"; अन्यथा $आउटपुट. = "उत्पादने नाहीत"; $आउटपुट .="!"; echo $output; ?>

PHP च्या टर्नरी ऑपरेटरचा वापर करून, आम्ही ही नोटेशन लहान करू शकतो:

0) ? "माल आहेत" : "कोणत्याही वस्तू नाहीत"). "!"; echo $output; ?>

हे नोटेशन कोडच्या ओळींची संख्या लक्षणीयरीत्या कमी करते. PHP ternary operator is a shorted version of if and else constructs, एका ओळीवर लिहिलेले. दोन कंसानंतर निर्दिष्ट केलेली स्थिती if चे ॲनालॉग आहे. त्यानंतर, एक प्रश्नचिन्ह ठेवले जाते, त्यानंतर खालील अटी: रचना खरी स्थिती पूर्ण करते का.

नंतर एक कोलन ठेवला जातो, त्यानंतर खालील अटी: बांधकाम चुकीची स्थिती पूर्ण करते का. या सर्व अटी असाइनमेंट ऑपरेटरसह एकाच ओळीवर लिहिल्या जात असल्याने, आम्ही दोन कंस ठेवतो जेणेकरुन PHP ला कळू शकेल की ओळीत एक अट आहे.

हा फक्त एक पर्यायी रेकॉर्डिंग पर्याय आहे, तो तुमच्या स्वतःच्या विवेकबुद्धीनुसार वापरा.

“मोर इफ स्टेटमेंट्स” या लेखाचे भाषांतर मैत्रीपूर्ण प्रोजेक्ट टीमने तयार केले होते.

चांगले वाईट


या ऑपरेटरच्या कृतीतील मुख्य गोष्ट म्हणजे स्थिती. इंग्रजीतून भाषांतरित केल्यास तर. अट एक युक्तिवाद म्हणून स्वीकारली जाते (कंसात काय आहे). स्थिती तार्किक अभिव्यक्ती किंवा तार्किक चल असू शकते. सोप्या भाषेत सांगायचे तर, अभिव्यक्तीचा अर्थ असा असेल:

जर (अट)(
अट पूर्ण झाली आहे, हे करा
}
इतर
{
अट पूर्ण होत नाही, ते वेगळ्या पद्धतीने करा
}
मला आशा आहे की सशर्त ऑपरेशनचे तर्क स्पष्ट आहे. आता एक उदाहरण पाहू.

$a = 5;
$b = 25;

// आता लक्ष द्या! अट: जर $b $a पेक्षा मोठे असेल
// चिन्हे > आणि< , как и в математике, обозначают больше и меньше
जर($b > $a)
{
// जर अट पूर्ण झाली असेल तर ही क्रिया करा
प्रतिध्वनी "$b $a पेक्षा मोठा आहे";
}
इतर
{
// जर अंमलात आणले नाही, तर हे
प्रतिध्वनी "$a $b पेक्षा मोठे किंवा समान आहे";
}
?>
प्रात्यक्षिक स्रोत डाउनलोड करा
परिणामी, स्क्रिप्ट आउटपुट होईल 5 पेक्षा 25 जास्त. उदाहरण अगदी सोपे आहे. मला आशा आहे की सर्व काही स्पष्ट आहे. आता मी एक अधिक क्लिष्ट परिस्थिती विचारात घेण्याचा प्रस्ताव देतो, जिथे अनेक अटी पूर्ण केल्या पाहिजेत. प्रत्येक नवीन स्थितीमध्ये मुख्य अट नंतर असेल तर()- सहायक, जे म्हणून लिहिले आहे अन्यथा जर(). शेवटी ते नेहमीप्रमाणे होईल इतर.

कार्य:शाळेत चाचणी घेतली जाते. स्क्रिप्टला प्रत्येक इयत्ता मिळविण्याच्या अटी आणि विद्यार्थ्याचे गुण जाणून घेऊन गुणांची गणना करणे आवश्यक आहे. हे कसे लिहायचे ते पाहूया, आणि भाष्य वाचण्यास विसरू नका.

$test = 82; // समजा एका विद्यार्थ्याने 82 गुणांसह चाचणी लिहिली

// पाच साठी पहिली अट लिहा
जर($test > 90)
{
// जर अट पूर्ण झाली असेल तर ही क्रिया करा.
इको "रेटिंग 5";
}
// && चिन्हाचा अर्थ "आणि, युनियन" असा होतो की दोन्ही सत्य असल्यास अट पूर्ण केली जाते
// म्हणजे, स्कोअर 91 पेक्षा कमी आणि 80 पेक्षा जास्त, नंतर 4. अन्यथा, अटी पुढे वाचल्या जातात.
अन्यथा ($test< 91 && $test > 80)
{
इको "रेटिंग 4";
}
अन्यथा ($test< 81 && $test > 70)
{
इको "रेटिंग 3";
}
इतर
{
प्रतिध्वनी "आम्ही पुन्हा चाचणी लिहावी...";
}
?>
प्रात्यक्षिक स्रोत डाउनलोड करा
आमचा विद्यार्थी ज्याच्याकडे विश्रांती आणि सामान्य चाचणी लिहिण्यासाठी वेळ आहे रेटिंग 4! मला आशा आहे की ऑपरेशनचे तत्त्व स्पष्ट आहे.

सशर्त ऑपरेशनच्या ऑपरेशनची थोडक्यात नोंद करणे देखील शक्य आहे, जेव्हा आपल्याला केवळ अट पूर्ण झाल्यास कारवाईची आवश्यकता असते.

$वय = 19; // वयानुसार परिवर्तनशील

जर ($ वय > 17)(
प्रतिध्वनी "बस! मला पाहिजे ते मी करू शकतो! मी आधीच $वयाचा आहे!";
}
सशर्त ऑपरेशनच्या लहान नोटेशनचे एक चांगले उदाहरण. इतरलिहिणे आवश्यक नाही.

PHP मध्ये तुलना ऑपरेटर

सशर्त ऑपरेशनच्या ऑपरेशनचे सिद्धांत स्पष्ट आहे. परंतु, जसे तुम्ही समजता, तुलना करण्याचे आणखी बरेच मार्ग आहेत. तुलना ऑपरेटर्ससह खालील तक्त्याकडे पाहू.

उदाहरण नाव परिणाम
$a == $b समान असेल तर $a बरोबर $b असेल
$a === $b समान ते सत्य असल्यास $a $b च्या बरोबरीचे असेल आणि दोन्ही व्हेरिएबल्स एकाच प्रकारचे असतील
$a != $b खरा बरोबर नाही जर $a $b च्या बरोबर नसेल
$a === $b सत्यासारखे नाही जर $a $b च्या समान नसेल आणि दोन्ही प्रकार समान नसतील
$a > $b खरे पेक्षा मोठे जर $a $b पेक्षा मोठे असेल
$a< $b Меньше чем True, если $a меньше, чем $b
$a >= $b जर $b पेक्षा मोठे किंवा बरोबर असेल तर $b खरे पेक्षा मोठे किंवा बरोबर
$a<= $b Меньше или равно True, если $a меньше или равно $b
आता ऑपरेटर्स पाहू उदाहरणांसह:

// सवयीच्या विरुद्ध = म्हणजे व्हेरिएबलला मूल्य नियुक्त करणे, आणि == समान आहे
जर ($a == 5)(
प्रतिध्वनी "$a 5 आहे"; // "5 equals 5" प्रिंट करेल
) इतर (
प्रतिध्वनी "$a 5 च्या समान नाही";
}

जर ($a != 6)(
प्रतिध्वनी "$a 6 च्या समान नाही"; // "5 is not equal to 6" मुद्रित करेल. नकाराच्या बाबतीत आवश्यक
) इतर (
प्रतिध्वनी "$a कसा तरी 6 समान आहे";
}

// अधिक आणि कमी मला वाटते की सर्वकाही स्पष्ट आहे. त्यामुळे उदाहरण अधिक क्लिष्ट आहे
जर ($a<= 6){
प्रतिध्वनी "$a 6 पेक्षा कमी किंवा समान आहे"; // "5 हे 6 पेक्षा कमी किंवा बरोबर" प्रिंट करेल
) इतर (
प्रतिध्वनी "$a 6 पेक्षा जास्त आहे";
}

PHP लॉजिकल ऑपरेटर

असे काही वेळा असतात जेव्हा तुम्हाला एकाच स्थितीत एकाच वेळी दोन किंवा अधिक व्हेरिएबलची तुलना करायची नसते. यासाठी आहेत तार्किक ऑपरेटर.

उदाहरण नाव परिणाम
$a आणि $b तार्किक "आणि" TRUE जर $a आणि $b दोन्ही सत्य असतील.
$a किंवा $b तार्किक "किंवा" TRUE जर $a किंवा $b एकतर TRUE असेल.
$a xor $b अनन्य "किंवा" TRUE जर $a किंवा $b सत्य असेल, परंतु दोन्ही नाही.
! $a खरे नसल्यास $a चे नकार.
$a && $b तार्किक "आणि" TRUE जर $a आणि $b दोन्ही सत्य असतील.
$a || $b बुलियन "किंवा" TRUE जर $a किंवा $b एकतर TRUE असेल.
ऑपरेशन्ससाठी आम्ही हे आधीच लक्षात घेतले आहे आणिआणि किंवाअतिरिक्त ऑपरेटर आहेत का? जटिल तुलना ऑपरेशनला प्राधान्य देण्यासाठी हे केले जाते. सारणीमध्ये, तार्किक ऑपरेटर प्राधान्य क्रमाने सूचीबद्ध केले आहेत: कमीतकमी ते सर्वात मोठे, म्हणजे, उदाहरणार्थ, || किंवा पेक्षा जास्त प्राधान्य आहे.

चला पुढे जाऊया उदाहरणांसाठी

$a = 5;
$b = 6;
$c = 7;

// स्थिती: 5 बरोबर 6 (TRUE) नसल्यास आणि 6 बरोबर 7 (TRUE) नसल्यास
जर ($a< 6 && $b != $c){
प्रतिध्वनी "खरंच असे!"; // प्रिंट करेल "खरंच असे!" कारण दोन्ही अटी सत्य आहेत
) इतर (
प्रतिध्वनी "अटींपैकी एक सत्य नाही";
}

// स्थिती: जर 6 6 च्या बरोबर नसेल (असत्य) किंवा 6 7 च्या बरोबर नसेल (सत्य)
जर ($b != 6 || $b != $c)(
प्रतिध्वनी "तेच आहे!"; // प्रदर्शित करेल "तेच आहे!", कारण किमान एक अटी सत्य आहे
) इतर (
प्रतिध्वनी "दोन्ही अटी खोट्या आहेत";
}

टर्नरी ऑपरेटर

मी तुम्हाला नंतर टर्नरी कोडच्या समस्येकडे परत येण्याचा सल्ला देतो. मी मदत करू शकलो नाही परंतु त्याचा उल्लेख करू शकलो नाही, कारण ही एक महत्त्वपूर्ण रचना आहे जी कोड आकार लक्षणीयरीत्या कमी करते. मी तुम्हाला लगेच कोड पाहण्याचा सल्ला देतो.

कोडचा सारांश:(अट) ? सत्य असल्यास a चे मूल्य: असत्य असल्यास a चे मूल्य

अशा प्रकारे, आपण if विधान लहान करतो. तथापि, हे ऑपरेशन केवळ व्हेरिएबलला मूल्ये नियुक्त करताना वैध आहे. आता एक पूर्ण झालेले उदाहरण पाहू.

// टर्नरी ऑपरेटर वापरण्याचे उदाहरण
$settings = (रिक्त($_POST["सेटिंग्ज"]))? "डीफॉल्ट" : $_POST["सेटिंग्ज"];

// वरील कोड if/else वापरून खालील ब्लॉक सारखा आहे
जर (रिकामे($_POST["सेटिंग्ज"])) (
$settings = "डीफॉल्ट"; // काहीही हस्तांतरित केले नसल्यास, "डीफॉल्ट" म्हणून सोडा
) इतर (
$settings = $_POST["सेटिंग्ज"]; // पास झाल्यास, $settings ला पास केलेले मूल्य नियुक्त केले जाते.
}
?>
कोडवरील टिप्पण्या वाचा आणि सर्वकाही स्पष्ट असावे.

आपण लक्ष दिल्याबद्दल धन्यवाद!


परिस्थिती अल्गोरिदमचा महत्त्वपूर्ण भाग व्यापतात. PHP ही एक प्रगतीशील प्रोग्रामिंग भाषा आहे ज्याचे विकसक प्रोग्रामरना वाक्यरचना लिहिण्यासाठी सर्वोत्तम फॉर्म देतात. if स्टेटमेंटचे त्रयस्थ स्वरूप वापरण्यास सोपे आहे आणि स्क्रिप्ट कोड स्पष्ट करते.

PHP ला (थोडक्यात) इतकी ओळख मिळाली नाही कारण ती मूळ सशर्त रचनांचा पूर्वज बनली आहे. अनेक प्रोग्रॅमर आपली स्वतःची शैली व्यक्त करणे हे त्यांचे कर्तव्य मानतात की परिस्थितीचे मूळ स्वरूप "बनावट" बनवून.

सशर्त विधानाचे सामान्य स्वरूप

अटी हे सर्वात जुने सिंटॅक्टिक बांधकाम आहे. असाइनमेंट ऑपरेटर सोबत - साधे कृती ऑपरेटर, सामान्यत: प्रोग्रामिंगच्या विकासामध्ये परिस्थिती खूप पुढे आली आहे.

स्विच/केस ऑपरेटरचा धाकटा "भाऊ" दिसण्यापूर्वी, पुलाखालून बरेच पाणी गेले होते;

PHP दिसू लागेपर्यंत, प्रोग्रामरना योग्य परिस्थिती निर्माण करण्याचा अनुभव प्राप्त झाला होता. PHP ची कल्पना, सर्व्हर भाषा, जी परिभाषेनुसार कॉम्पॅक्ट आणि वेगवान असणे नियत आहे, त्वरीत इष्टतम वाक्यरचना आणि अर्थ व्यक्त करण्याच्या प्रकारांवर आली जी समज आणि समजण्यासाठी सोयीस्कर आहे.

स्क्रिप्ट कोडच्या मजकुरात PHP हे शॉर्ट फॉर्ममध्ये आणि फुल फॉर्ममध्ये तितकेच सोयीस्कर आणि आरामदायक असेल.

फोटोमध्ये दर्शविलेल्या उदाहरणात (1) प्रारंभिक डेटा आहे, (2) सशर्त ऑपरेटरचे पूर्ण रूप आहे. अट कंसात लिहिलेली आहे आणि हवी तेवढी लांब असू शकते. अट सत्य असल्यास पहिल्या कर्ली ब्रेसेसमधील विधानांचा ब्लॉक कार्यान्वित केला जातो. अट चुकीची असल्यास "अन्य" शब्दानंतर कुरळे ब्रेसेसमधील ब्लॉक कार्यान्वित केला जाईल.

जेव्हा कंसाच्या दोन्ही जोड्या वगळल्या जातात तेव्हा साधा फॉर्म (3) वापरला जाऊ शकतो. परंतु प्रोग्रामरला जबाबदारीची संपूर्ण व्याप्ती समजली पाहिजे. कुरळे ब्रेसेस लिहिण्यासाठी जास्त खर्च येत नाही, परंतु हे सुनिश्चित करते की कोणत्याही परिस्थितीत नियंत्रण हाताबाहेर जाणार नाही.

सशर्त ऑपरेटरचे टर्नरी फॉर्म

उदाहरण (4) साध्या स्थितीचा सर्वात लोकप्रिय वापर दर्शविते. if साठी PHP लघुलेख isset() फंक्शनला परिपूर्ण पूरक आहे. GET (किंवा POST) द्वारे डेटाची पावती तपासणे खूप सोयीचे आहे आणि अपेक्षित मूल्य गहाळ असल्यास, व्हेरिएबल डीफॉल्ट मूल्यावर सेट करा.

कंसांसह अटी मर्यादित करण्याचे लक्षात ठेवा. आपल्याला हे माहित असले पाहिजे की टर्नरी ऑपरेटर सहजपणे अभिव्यक्तींमध्ये स्थापित केले जाते. हे समजले पाहिजे की "समान अटींवर" शॉर्ट नोटेशनमधील विधान अभिव्यक्तीमध्ये भाग घेत असल्यास PHP चा परिणाम. जर एखाद्या अभिव्यक्तीमध्ये विविध गणितीय किंवा स्ट्रिंग ऑपरेटर असतील, तर टर्नरी “if” चा परिणाम हा अभिव्यक्तीचा समान ऑपरेंड असेल.

अस्पष्ट परिस्थिती ही यशाची गुरुकिल्ली आहे

आधुनिक अत्यावश्यक प्रोग्रामिंगमधील कोणतेही विधान वगळले जाऊ शकत नाही. सर्व काही अगदी अचूक आणि फक्त प्रोग्रामरच्या हेतूनुसार केले जाते. PHP मध्ये, जर (शॉर्ट फॉर्म आणि लाँग फॉर्म) ची जबाबदारी समान पातळी आहे.

टर्नरी पर्याय हा परिणाम आहे. पूर्ण फॉर्म नियंत्रण पुनर्निर्देशन आहे. पहिल्या प्रकरणात, अनुप्रयोगातील त्रुटी डेटामध्ये त्रुटी निर्माण करेल. दुसऱ्या प्रकरणात, नियंत्रण चुकीच्या दिशेने हस्तांतरित केले जाईल.

जेव्हा शंका असेल, तेव्हा तुम्ही PHP अटी लहान नोंदीमध्ये वापरू नये. जर () () इतर () स्पष्ट आणि अधिक व्यावहारिक असू शकतात. एक सामान्य नियम जो स्थिर निकालाची हमी देतो: जर शंका असेल तर त्याच्या आधारापासून वंचित करा. प्रथम एक मोठा, परंतु अत्यंत स्पष्ट उपाय असू द्या.

जेव्हा परिस्थितीची श्रेणी स्पष्ट आणि स्पष्टपणे समजण्यायोग्य बनते, तेव्हा तुम्ही PHP मध्ये लहान नोटेशनमध्ये अंमलबजावणी करू शकता.



आम्ही वाचण्याची शिफारस करतो

वर