फ़ंक्शन strpos
फ़ंक्शन strpos किसी दूसरी स्ट्रिंग में सबस्ट्रिंग की पहली घटना की स्थिति लौटाता है
या false, अगर सबस्ट्रिंग नहीं मिलती है।
पहले पैरामीटर के रूप में फ़ंक्शन वह स्ट्रिंग लेता है
जिसमें खोज की जाती है, दूसरे पैरामीटर के रूप में
- वह सबस्ट्रिंग जिसे खोजा जाना चाहिए।
डिफ़ॉल्ट रूप से, फ़ंक्शन स्ट्रिंग की शुरुआत से पहले मेल तक खोज करता है। खोज की शुरुआत को तीसरे वैकल्पिक पैरामीटर के साथ नियंत्रित किया जा सकता है - अगर यह निर्दिष्ट किया गया है, तो खोज शुरुआत से नहीं, बल्कि निर्दिष्ट स्थान से शुरू होगी।
फ़ंक्शन stripos भी है, जो
केस को अनदेखा करते हुए वही काम करता है।
सिंटैक्स
phpstrpos(string $haystack, string $needle, int $offset = 0): int|false
उदाहरण
इस उदाहरण में, फ़ंक्शन पहले कैरेक्टर
'c' की स्थिति लौटाएगा। यह स्थिति 2 लेता है,
क्योंकि गिनती 0 से शुरू होती है:
php<?php
echo strpos('abcde abcde', 'c');
?>
कोड निष्पादन का परिणाम:
php2
उदाहरण
इस उदाहरण में, तीसरा पैरामीटर दिया गया है और
इसलिए खोज तीसरी स्थिति से शुरू होगी,
इस मामले में फ़ंक्शन दूसरे कैरेक्टर
'c' को ढूंढेगा और इसकी स्थिति - 8 दिखाएगा:
php<?php
echo strpos('abcde abcde', 'c', 3);
?>
कोड निष्पादन का परिणाम:
php8
उदाहरण
अगर सबस्ट्रिंग नहीं मिलती है - तो फ़ंक्शन
false लौटाएगा। अगर स्ट्रिंग
शुरुआत में है, तो फ़ंक्शन 0 लौटाएगा।
शॉर्ट फॉर्म कंडीशन के माध्यम से तुलना करते समय
यह एक समस्या हो सकती है:
php<?php
if (strpos('http://site.ru', 'http://')) {
echo '+++';
} else {
echo '---';
}
?>
कोड निष्पादन का परिणाम (वैसा नहीं, जैसा हमने उम्मीद की थी):
php'---'
उदाहरण
आइए स्ट्रिंग की शुरुआत की सही जांच करें:
php<?php
if (strpos('http://site.ru', 'http://') === 0) {
echo '+++';
} else {
echo '---';
}
?>
कोड निष्पादन का परिणाम:
php'+++'
यह भी देखें
-
फ़ंक्शन
strrpos,
जो सबस्ट्रिंग की अंतिम घटना की स्थिति लौटाता है -
फ़ंक्शन
str_contains,
जो स्ट्रिंग में कैरेक्टर की घटना की जांच करता है -
फ़ंक्शन
str_starts_with,
जो स्ट्रिंग की शुरुआत की जांच करता है -
फ़ंक्शन
str_ends_with,
जो स्ट्रिंग के अंत की जांच करता है -
फ़ंक्शन
array_search,
जो ऐरे में खोज करती है