ฟังก์ชัน strpos ใน PHP จะว่าไปแล้ว ผมก็ใช้ก็ใช้อยู่บ่อยๆ แต่ก็ยังจำลำดับของพารามิเตอร์ไม่ได้อยู่ดีครับ 😛 แล้วเจ้าฟังก์ชัน strpos นี้มันมีประโยชน์ยังไงล่ะ ฟังก์ชันนี้จะทำหน้าที่ตรวจว่ามีคำที่เราต้องการใน string ที่เราส่งเป็นพารามิเตอร์ครับ รูปแบบการใช้งานก็ไม่ยากครับ แต่จะสับสนนิดหน่อยกับลำดับของพารามิเตอร์นี่แหละครับ
[imooh_google_ads]
รูปแบบการใช้งาน
int strpos ( string $haystack , mixed $needle [, int $offset = 0 ] )
มาดูความหมายของพารามิเตอร์แต่ละตัวกันครับว่า มันคืออะไร
$haystack เป็น string ที่เราต้องการตรวจสอบ
$needle เป็นตัวที่เราต้องการค้นหาใน $haystack
$offset เป็นตำแหน่งเริ่มต้นในการค้นหา ถ้าไม่ระบุจะเริ่มต้นจาก 0 ครับ
ฟังก์ชัน strpos จะคืนค่า (return) มาเป็นตำแหน่งที่พบอันดับแรก แต่ถ้าไ่ม่เจอจะคืนค่ากลับมาเป็น FALSE
ตัวอย่างการใช้งานฟังก์ชัน strpos
ตัวอย่างแบบไม่ใช้ $offset
<?php
$mystring = "asdfjkasd";
$findme = "a";
$pos = strpos($mystring,$findme);if($pos!==FALSE){
echo "พบ $findme ที่ตำแหน่ง<b> $pos </b>";
}else{
echo "ไม่พบ $findme ใน $mystring";
}
?>
ตัวอย่างแบบใช้ $offset
<?php
$mystring = "asdfjkasd";
$findme = "a";
$pos = strpos($mystring,$findme,2);if($pos!==FALSE){
echo "พบ $findme ที่ตำแหน่ง <b>$pos</b>";
}else{
echo "ไม่พบ $findme ใน $mystring";
}
?>
ลองก๊อปปี้ไปรันดูผลลัพธ์ดูนะครับ ว่าสองตัวอย่างนี้แตกต่างกันยังไง ^^