ใน workshop นี้จะแนะนำฟังก์ชั่น array_unique จะทำหน้าที่ตัดค่าที่ซ้ำกันออกไปให้เหลือเพียงหนึ่งเดียว ซึ่งคนที่เคยใช้ array มาระบดับหนึ่งก็คงจะทราบดีว่าเวลาเรา print_r($result) ออกมาใน php จะเริ่มนับที่ 0 เป็นต้นไป มาลองดู code workshop ง่ายๆ จะได้เข้าใจการทำงานมากขึ้นนะครับ
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
<meta charset="utf-8"> <?php echo "<h1 align='center'>:: Test array_unique ตัดค่าที่ซ้ำออกไป :: </h1>"; echo "<hr>"; // check number echo "<b> check number </b>"; $array = array( 1, 2, 2, 1, 2, 1, 3, 3 ); $result1 = array_unique( $array ); echo "<pre>"; print_r($result1); echo "</pre>"; echo "<hr>"; // check animals echo "<b> check animals </b>"; $array = array( "เป็ด","ไก่", "แมว","ไก่", "นก","ปู", "ปลา", "เป็ด" ); $result2 = array_unique( $array ); echo "<pre>"; print_r($result2); echo "</pre>"; echo "<hr>"; // check A B C D E echo "<b> check A B C D E </b>"; $array = array( "A", "A", "C", "B", "B", "C", "D", "E" ); $result3 = array_unique( $array ); echo "<pre>"; print_r($result3); echo "</pre>"; ?> |
ผลลัพธ์ตอน run
ให้สังเกตตัวเลขที่อยู่ใน [0] [1] ซึ่งจะไม่เรียงลำดับเป็น [0] [1] [2] [3] เป็นเพราะเมื่อมีการเช็คว่าคำไหนซ้ำก็จะตัดคำข้างหลังออกไปและนำคำที่อยู่ลำกับข้างหน้ามาแสดงแทน ก็จะได้ลำดับหรือ index ของคำข้างหน้ามาครับ
***ต้องฝึกคิด ฝึกเขียนถึงจะได้ผลลัพธ์นะครับ สู้ๆ