ฟังก์ชัน in_array เป็นฟังก์ชันที่ใช้ตรวจสอบค่าใน array ว่ามีค่าที่เราต้องการอยู่หรือป่าว โดยฟังก์ชันนี้จะส่งค่ากลับมา (return) เป็น true ถ้าหากมีค่าที่เราต้องการใน arrray นั้น และจะส่่งค่ากลับมาเป็น false ถ้าไม่มีค่าที่เราต้องการอยู่ใน array
รูปแบบการใ้ช้งาน
bool in_array ( mixed $needle , array $haystack [, bool $strict ] )
$needle หมายถึง ค่าที่เราต้องการตรวจสอบว่าีมีอยู่ใน array หรือป่าว
$haystack หมายถึง array ที่เราต้องการจะตรวจสอบค่า
$strict จะใส่หรือไม่ก็ได้ โดยถ้าหากใส่ค่าเป็น true หมายถึงให้ตรวจสอบชนิดข้อมูลของ $needle และค่าใน array $haystack ด้วย
มาดูตัวอย่างกันครับ
ตัวอย่างที่ 1
<?php
$os = array(“Mac”,”NT”,”Iris”,”Linux”);
if(in_array(“Irix”,$os)){
echo “Got Irix”;
}
if(in_array(“mac”,$os)){
echo “Got Mac”;
}
?>
เนื่องจากฟังก์ชัน in_array นั้นให้ความสำคัญกับตัวอักษรด้วย (case sensitive) ดังนั้นค่าที่ได้จากการรันตัวอย่างที่ 1 ก็จะเป็น
Got Irix
ตัวอย่างที่ 2 มีการส่งพารามิเตอร์ตัวที่สามเข้าไปด้วยและกำหนดให้มีค่าเป็น true นั่นคือ ตรวจสอบชนิดข้อมูลด้วย
<?php
$a = array(‘1.10’,12.4,1.13);
if(in_array(‘12.4’,$a,true)){
echo “‘12.4’ found with strict checkn”;
}
if(in_array(1.13,$a,true)){
echo “1.13 found with strict checkn”;
}
?>
ผลของการรันตัวอย่างที่ 2 ก็จะได้ผลลัพธ์เป็น
1.13 found with strict check