String compare Function PHP tutorial in Hindi – 71

String compare Function PHP tutorial in Hindi आज हम इस आर्टिकल के माध्यम से हम समझेंगे PHP string के compare फंक्शन के बारे में तो PHP में हमारे पास 8 तरह के अलग अलग फंक्शन आते है। जिनका अलग अलग काम होता है।

PHP में compare फंक्शन करता क्या है की जैसे हमारे पास में एक नाम है Fast और दूसरा नाम है fast तो आप यहाँ देख सकते है दोनों के नाम तो same ही है लेकिन इसमें जो लिखने की स्टाइल है ये change है तो जब हम in दोनों का आपस में compare करते है।

तो हमारे पास में तिन रिजल्ट आते है 0 या <0 या फिर 0> इसका मतलब है की fast को दोनों ही नाम में स्माल लेटर में लिखते है तो आएगा 0 क्युंकी इसे iqual माना जाता है अगर इसमें अगर लेफ्ट का f बड़ा है <0 आएगा और राईट का बड़ा है 0> ये वैल्यू कुछ भी हो सकती है।

  1. strcmp
  2. strncmp
  3. strcasecmp
  4. strncasecmp
  5. strnatcmp
  6. strnatcasecmp
  7. substr_compare
  8. similar_text

strcmp() के अंदर हम दो पेरामीटर पास करते है strcmp का मतलब है string compare और in दोनों पेरामीटर के अंदर दोनों वैल्यू ही डालते है जिसे हम compare करना चाहते है। और ये case सेंसेटिव फंक्शन है अगर fast को ऐसे लिखने के बजाय Fast ऐसे लिखते है तो इसे डिफरेंट माना जायेगा।

अगर हम इसे same करना चाहते है तो इसके लिए हमारे पास एक दूसरा फंक्शन आता है जिसे हम strcasecmp फंक्शन कहते है। इसके अंदर भी हम 2 पेरामीटर पास करते है।

अब अगला हमारा फंक्शन आता है जिसे हम strncmp फंक्शन कहते है। अगर हम सिर्फ कोई लिमिट के लेटर ही compare करना चाहते है तो इसके लिए हमारे पास एक फंक्शन आता है

जिसे हम strcmp कहते है इसके अंदर 3 पेरामीटर पास करते है 2 स्ट्रिंग और तीसरा हम जैसे नुमेरिक 2 देते है तो अगली २ लेटर का ही compare किया जायेगा। ये भी case सेंसेटिव है और अगर case insensitive फंक्शन का अंदर करना चाहते है तो इसके लिए दूसरा फंक्शन आता है strncasecmp फंक्शन इसका हम use करते है।

और अगर पूरी स्ट्रिंनग के अंदर से कोई बिच में वैल्यू का compare करना चाहते है तो इसके लिए हमारे पास एक फंक्शन आता है जिसे हम substr_compare फंक्शन कहते है। इसके अंदर 5 पेरामीटर होते है पेरामीटर 1 और दो में हमें स्ट्रिंग वैल्यू डालनी है जो वैल्यू जिसका हम compare करना चाहते है।

तीसरे पेरामीटर में कहाँ से स्टार्ट करना है और चौथे में कहाँ तक करना है और पांचवे में case और अगर आप चौथा पेरामीटर नही देते है तो लास्ट तक पुरे में compare करेगा। और case यानि पांचवे पेरैमीटर में में २ ही वैल्यू पास होती है true या false by डिफ़ॉल्ट false होती है।

इसका मतलब है की false है case सेंसेटिव रहेगा और अगर true देते है तो ये case insensitive बन जायेगा।

अगला फंक्शन आता है हमारे पास में similar_text इसका मतलब है की ये सिर्फ लेंथ मैच करता है इसके अंदर 3 पेरामीटर पास करते है पहला और दूसरा स्ट्रिंग और तीसरा ओप्सनल परसेंट

<?php 

echo strcmp("Hello world", "Hello world");
?>

output:- 0

ye output me 0 aaya hai iska matalb hai ki value puri tarh se match ho rhi hai thoda change karke dekhte hai

<?php 

echo strcmp("Hello world", "Hello World");
?>

out put :- 1

Iska matlab hai ki aapne positive ham to iska matlab hai ki ye aaps me match nhi ho rhi hai or value chahe kuchh bhi ho ise koi fark nhi padta hai lekin isme main baat ye dekhnhi hai ki 0 hai ya negetive ya positive hai.

इसका मतलब है की लेफ्ट वाली व्लुए से राईट से छोटी है और अगर लेफ्ट कोई और वैल्यू add करते है तो आउटपुट में नेगेटिव में वैल्यू आएगी।

<?php 

echo strcmp("Hello world", "Hello world , Hello ");
?>

आउटपुट :- -9

यहाँ देख सकते है इसमें वैल्यू नेगेतिव में आई है।

<?php 

echo strncmp("Hello world", "Hello world , Hello ", 6);
?>

आउटपुट -0

इसका मतलब है की मैंने इसमें चेक किया strncmp फंक्शन का use करके के जो शुरू के 6 लेटर चेक किया है। जिसमे चेक किया है 6 लेटर आपस में मिल रहा है की नही। लेकिन ये case सेंसेटिव है। इसके लिए case insensitive चेक करने के लिए हमारे पास अलग फुन्क्टिन आता है strcasecmp निचे के कोड में देखे।

<?php 

echo strcasecmp("HELLO WORLD","Hello world");
?>

आउटपुट – 0

जैसे आप ऊपर देख सकते है एक वैल्यू कोई मैंने कैपिटल में लिया है और एक को मैंने स्माल में लिया है। फिर भी ये कह रहा है की ये true है। अब ये case नही बल्कि लेटर देखता है। अब अगर मै 5 लेत्तर ही सिर्फ मैच करना चाहता हूँ तो इसके लिए तीसरा पेरामीटर पास करना पड़ेगा । और इसके लिए दूसरा फंक्शन भी use करना पड़ेगा strncasecmp

<?php 

echo strncasecmp("HELLO WORLD","Hello world",5);
?>

आउटपुट- 0

इसका मतलब है की आगे के 5 लेटर मैच हो रहे है।

<?php 

echo strnatcmp("Hello","Hello");
?>

out put – 0

str nat cmp का मतलब है स्ट्रिंग नेचुरल अल्गोरिदम compare ये काम कैसे करता है की इसका मतलब है की दोनों वैल्यू आपस में मैच हो रही है। और अगर नुमेरिक वैल्यू डालते है।

<?php 

echo strnatcmp("2Hello","10Hello");
?>

आउटपुट:- -1

ये इसने देखा की २ जो है 10 से छोटा है तो इसलिए इसने -1 दिया है और अगर strcmp का use करते है तो इसका मतलब है की जो वैल्यू डाली है 1 दिखायेगा। तो ये कह रहा है है २ से 10 छोटा है तो ये गलत है इसका सही use के लिए हम use करते है strnatcamp फंक्शन का।

<?php 

echo strnatcasecmp("10 Hello Friends","10 Hello Friends");
?>

Output :- 0

इसका मतलब है की दोनों स्ट्रिंग के लेटर same है इसलिए लेकिन हम इसे स्माल लेटर में लिखे तो भी 0 ही आएगा। क्यूंकि इसमें जो हमने case लगाया है ये लेटर देख है case नही देखता है।

अब हम अगर कोई बिच में लेटर को compare करना चाहते है तो इसके लिए हम use करते है substr_compare का

<?php 

echo substr_compare("Hello Friends","friends",6);
?>

आउटपुट . 0

ये यहाँ पर आप देख सकते है 6 लेटर के बाद मैंने इसे पूछा है की क्या ये same है तो इसका जवाब है 0 हाँ एक जैसा है

अब मैं चौथा पेरामीटर भी use करके देखते है।

<?php 

echo substr_compare("Hello Friends","Friends",6,3);
?>

Output :- 0

जैसा की आप यहाँदेख सकते है मैंने इसमें 6 से स्टार्ट किया है और फिर सिर्फ 3 ही लेटर को compare किया है और अगर आप 0 डालते है 6 की जगह तो ये शुरू से compare करेगा। और इसमें negetive वैल्यू देकर भी compare कर सकते है। तो आप इस तरीके से बिच में लेटर से compare कर सकते है।

अब मै हम इसे case insensitive में देखना चाहते है। तो इसके लिए हमें पांचवा पेरामीटर use करना पड़ेगा। इसमें हम true या false by डिफ़ॉल्ट false ही होता है। ये अगर डालो या नही इसे कोई फर्क नही पड़ता है।

<?php 

echo substr_compare("Hello Friends","friends",6,3,true);
?>

आउटपुट :-0

यहाँ आप देख सकते है मैंने इसमें लेटर एक बड़ा और एक छोटा डाला है फिर भी ये true बता रहा है is तरीके से भी आप काम कर सकते है।

और अब हमारा लास्ट फंक्शन हम use कर के देखते है ये फंक्शन हमें बताता है की कितने लेटर आपस में मैच हो रहे है। और इसे हम तीसरा पेरामीटर use कर के ये भी देख सकते है है की कितना प्रतिशत मैच हो रहा है।

<?php 
echo similar_text("Hello Friends","friends ok done");?>

out put- 6

तो ये कह रहा है की इसमें आपके 6 text आप में मैच खा रहे है। 6 कोनसे है ab mai % me dekhta hun

<?php 

similar_text("Hello Friends","friends ok done", $per);

echo "Per = $per";
?>

Output :- Per = 42.857142857143

तो ये कह रहा है की ४२ पर्तिशत मैच हुआ है इस तरीके से भी आप कर सकते है। String compare Function PHP tutorial in Hindi

You May Also Like

प्रातिक्रिया दे

आपका ईमेल पता प्रकाशित नहीं किया जाएगा. आवश्यक फ़ील्ड चिह्नित हैं *