ฟังก์ชั่นที่น่าสนใจของ Array ในการเขียนภาษา PHP 

ฟังก์ชั่นที่น่าสนใจของ Array ในการเขียนภาษา PHP สามารถทำได้หลากหลายฟังก์ชั่นมากๆ ซึ่งแต่ละอันก็มีลูกเล่นต่างๆมากมาย ซึ่งวันนี้เราจะมาแนะนำให้รู้จักกันทีละเล็กทีละน้อย แต่ว่ามีความสำคัญได้นำไปใช้อย่างแน่นอน และจะช่วยให้การพัฒนาเว็ปไซต์ของท่าน เปิดโลกทัศน์ใหม่ๆมากขึ้นอย่างแน่นอน

การค้นหา ข้อมูลสมาชิกและการสุ่มข้อมูลสมาชิกจากใน array

ฟังก์ชั่นนี้ไปประยุกต์ได้หลากหลาย อาจจะใช้ในการสุ่มรางวัล สุ่มผู้โชคดี หรือค้นหารายชื่อจากฐานข้อมูลก็ได้เช่นกัน โดยมีวิธีการทำงานดังนี้

Array_search() ค้นหาสมาชิกที่ระบุ ในอาร์เรย์เป้าหมาย

Array_rand() สุ่มสมาชิกที่ระบุ ในอาร์เรย์เป้าหมาย

ตัวอย่าง

$names = [“Marco”, “Jenny”, “Daniel”, “Sam”];

$index = array_search(“Jenny”, $names);

Echo $index; //ผลลัพธ์คือ 2 คือเจอ Jenny เป็นสมาชิกอยู่ในอาร์เรย์ $names โดยเป็นสมาชิกลำดับที่ 2 ของอาร์เรย์นี้

$random_index = array_rand($names);

Echo $names[$random_index]; //ผลลัพธ์คือชื่อสมาชิกคนใดคนหนึ่งในอาร์เรย์นี้ แล้วเอาไปต่อยอดได้เช่นเป็นผู้โชคดี หรือผู้โชคร้าย ได้รางวัล เหล่านี้เป็นต้น และหากเราต้องการสุ่มหลายสมาชิกในอาร์เรย์ในครั้งเดียวก็ทำได้เช่นกัน เพียงแต่เปลี่ยนแปลงรูปแบบเพียงเล็กน้อย ดังนี้

array_rand($names, 2); //ผลลัพธ์ที่ได้ก็จะเป็นการสุ่มสมาชิกจาก array “$names” ออกมา “2” สมาชิกนั่นเอง

ฟังก์ชั่นจัดการเซ็ตของอาร์เรย์

การจัดเซ็ตของฟังก์ชั่นอาร์เรย์ของ PHP นั้น มีหลายเครื่องมือ ซึ่งมีประโยชน์เอาไปพัฒนาต่อยอดได้มากมายหลากหลาย อาทิ เช่น

$array1 = [1,2,4,5,6,7];

$array2 = [1,2,3,5,8,9];

ฟังก์ชั่น array_intersect เป็นฟังก์ชั่นเพื่อหาค่าที่เหมือนกันในอาร์เรย์ของ 2 อาร์เรย์ที่ระบุ แล้วส่งผลลัพธ์ออกมาเป็นอาร์เรย์ใหม่

$intersect = array_intersect($array1, $array2);

echo display_array($intersect); // จากตัวอย่างจะได้ 1,2,5

ฟังก์ชั่น $merge = array_merge($array1, $array2); เป็นฟังก์ชั่นใช้นำสองอาร์เรย์มารวมกัน แล้วได้ผลลัพธ์เป็นอาร์เรย์ใหม่ จากตัวอย่างข้างต้นผลลัพธ์จะได้ดังนี้

echo diplay_array($merge); // 1, 2, 4, 5, 6, 7, 1, 2, 3, 5, 8, 9,

ฟังก์ชั่น array_unique() เป็นฟังก์ชั่นใช้หาค่าเฉพาะที่ไม่ซ้ำกันของทั้งสอง array

ฟังก์ชั่น array_diff() เป็นฟังก์ชั่นใช้หาค่าต่างกันของสมาชิกในทั้งสองอาร์เรย์ โดยใช้อาร์เรย์แรกที่อ้างอิงตั้งต้น แล้วเทียบกันกับอาร์เรย์เป้าหมาย อย่างตัวอย่างก็คือเอา $array1 ตั้งต้น แล้วเทียบกับ $array2 ผลลัพธ์ที่ได้ออกมาคือ 4,6,7

 

สนับสนุนเรื่องจาก  ทดลองเล่น gclub