ดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

array_intersect_uassoc()

ฟังก์ชัน array_intersect_uassoc () เป็นฟังก์ชัน inbuilt ใน PHP  ถูกใช้เพื่อเปรียบเทียบคีย์และค่าของสอง Array ขึ้นไปโดยใช้ฟังก์ชั่นการเปรียบเทียบที่ผู้ใช้กำหนดและคืนค่าที่เหมือนกัน

ฟังก์ชั่นการเปรียบเทียบส่งคืนจำนวนเต็มเท่ากับมากกว่าหรือน้อยกว่าศูนย์ หากอาร์กิวเมนต์แรกที่ต้องพิจารณาน้อยกว่า,เท่ากับหรือมากกว่าวินาที   ถ้า condition เป็นจริงแล้วส่งคืนค่า TRUE นอกเหนือจากนั้นจะส่งคืนค่า FALSE  

array_intersect_uassoc ( array $array1 , array $array2 [, array $... ], callable $key_compare_func ) : array

พารามิเตอร์ที่ใช้:ฟังก์ชันนี้รับพารามิเตอร์ขั้นต่ำสามพารามิเตอร์และพารามิเตอร์ทั้งสามนั้นจำเป็นต้องมีและพารามิเตอร์อื่น ๆ เป็นตัวเลือก พารามิเตอร์อธิบายไว้ด้านล่าง:

  • $ array1 (จำเป็น):
    อาร์เรย์จะถูกเปรียบเทียบกับอาร์เรย์อื่น ๆ ..
  • $ array2 (จำเป็น):

    อาร์เรย์เปรียบเทียบกับอาร์เรย์แรก

  • $ array3 ... (ตัวเลือก):

    อาร์เรย์เปรียบเทียบกับอาร์เรย์แรก

  • uassoc_intersectFunction (จำเป็น):

    เป็นฟังก์ชั่นที่ผู้ใช้กำหนด สตริงที่กำหนดฟังก์ชันการเปรียบเทียบ callable ฟังก์ชั่นการเปรียบเทียบจะคืนค่าจำนวนเต็มน้อยกว่าเท่ากับหรือมากกว่า 0 ถ้าอาร์กิวเมนต์แรกน้อยกว่าเท่ากับหรือมากกว่าอาร์กิวเมนต์ที่สอง

Return Value : 
ส่งคืนอาร์เรย์ที่มีรายการจาก array1 ที่มีอยู่ในอาร์เรย์อื่น ๆ ทั้งหมดเช่น :-( arra2, arra3, arar4 …. More) ชนิดของค่าที่ส่งคืนคืออะาร์เรย์

หมายเหตุ:   The function uses a user-defined function to compare the keys. (ฟังก์ชั่นที่ผู้ใช้กำหนดสามารถใช้
งานได้กับคีย์ไม่ใช่สำหรับค่าของคีย์)

ตัวอย่างโค้ดดังนี้

<?php 
$arr1 = array( 
	"a" => "gfg", 
	"b" => "GeeksforGeeks", 
	"c" => "contribute"
); 
$arr2 = array( 
	"a" => "gfg", 
	"B" => "GeeksforGeeks", 
	"c" => "ide"
); 
$arr3 = array( 
	"x" => "gfg", 
	"B" => "GeeksforGeeks", 
	"c" => "practice"
); 



// Compare the keys and values by using a 
// user-defined key comparison function. 
// Here callback function applicable on keys 
echo "Using function: array_uintersect_assoc() \n "; 
$result = array_intersect_uassoc($arr1, 
				$arr2, $arr3, "strcasecmp"); 

// printing result 
print_r($result); 

?> 

ผลลัพธ์

Using function: array_uintersect_assoc() 
 Array
(
    [b] => GeeksforGeeks
)

จากโค้ดตัวอย่างถ้าเราดู $array$array2 และ  $array3  เราพอจะรู้ไปได้ว่า มีค่าค่าหนึ่งที่มีอยู่ในทั้งสามอาเรย์ ซึ่งนั้นก็คือ "b" => "GeeksforGeeks"  ถึงแม้ตัว b จะเป็นตัวพิมใหญ่ พิมเล็กก็ตาม ในตัวอย่างนี้เราจะปรียบเทียบคีย์ของอาร์เรย์โดยใช้ฟังก์ชัน strcasecmp() เพื่อไม่คำนึงถึงขนาดตัวพิมพ์เล็กใหญ่(case-sensitive)  โดยทำการเปรียบเทียบทั้งสามอาเรย์คำนึงถึงอาเรย์ตัวแรกเป็นหลักหรือเป็นที่ตั้ง และหาค่าจะอาเรย์ตัวที่มีเหมือนกัน ผลลัพธืที่ได้เมื่อเราทำการ print_r() เพื่อแสดงข้อมูลใน array ดังด้านบนครับ ซึ่งฟังก์ชันนี้จะคล้ายๆกับ array_uintersect() 

ตัวอย่างโปรแกรมที่2

<?php 

// Illusrate array_intersect_uassoc() 
// Function in PHP 


function uassoc_intersectFunction($arr1, $arr2) 
{ 
	if ($arr1 === $arr2) { 
		return 0; 
	} 
	return ($arr1 > $arr2) ? 1 : -1; 
} 

// Code driven 
$arr1 = array( 
	"0" => "Graph", 
	"1" => "Dynamic", 
	"3" => "Recursive", 
	"4" => "Prime Factor"
); 
$arr2 = array( 
	"4" => "Prime", 
	"2" => "Factorial", 
	"3" => "Recursive", 
	"7" => "Modulo"
); 

$result = array_intersect_uassoc($arr1, 
		$arr2, "uassoc_intersectFunction"); 
print_r($result); 

?> 

ผลลัพธ์ดังนี้

Array
(
    [3] => Recursive
)

รับสองอาร์เรย์ (array1 และ array2) และใช้ฟังก์ชันการเปรียบเทียบคีย์ที่ผู้ใช้กำหนด (uassoc_intersectFunction) ฟังก์ชันส่งคืนอาร์เรย์ที่มีคีย์และค่าที่เท่ากันหรือเหมื่อนกันเท่านั้น

ช่องทางการศึกษาเพิ่มเติมข่าวที่น่าสนใจเกี่ยวกับ : ฟังก์ชัน PHP

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
มี Extension ตัวไหน ดึงข้อมูลจากเว็บอื่นมาแสดงได้ครับ
โดย toonytoony2004 อ 16 ก.ค. 2019 12:55 pm บอร์ด Joomla Development
0
46
อ 16 ก.ค. 2019 12:55 pm โดย toonytoony2004
สรุป openERP
โดย jirawoot จ 15 ก.ค. 2019 8:01 pm บอร์ด M090 - นายจิระวุฒิ อัครลิขิตกุล
0
2
จ 15 ก.ค. 2019 8:01 pm โดย jirawoot
Youtube สามารถฟังเสียงแล้วถอดเป็นข้อความได้
โดย jamepiyawat จ 15 ก.ค. 2019 7:11 pm บอร์ด Share Knowledge
0
42
จ 15 ก.ค. 2019 7:11 pm โดย jamepiyawat
วิธีทำให้ Title joomla Module เปลี่ยนภาษาได้
โดย jamepiyawat จ 15 ก.ค. 2019 6:07 pm บอร์ด Joomla user Guide Knowledge
0
25
จ 15 ก.ค. 2019 6:07 pm โดย jamepiyawat
วิธีแก้ error ของการติดตั้ง psycopg2 หรือ psycopg2_binary
โดย jirawoot จ 15 ก.ค. 2019 5:48 pm บอร์ด Python Knowledge
0
25
จ 15 ก.ค. 2019 5:48 pm โดย jirawoot
การเปิดไฟล์ PDF อีกแท็บนึง ด้วย target ใน html
โดย chatee supasand จ 15 ก.ค. 2019 5:42 pm บอร์ด Programming - C/C++ & java & Python
0
37
จ 15 ก.ค. 2019 5:42 pm โดย chatee supasand
ฟังก์ชัน ip2long() - ใช้เก็บ IP ลงฐานข้อมูลทำให้ประหยัดพื้นที่
โดย Patipat จ 15 ก.ค. 2019 5:33 pm บอร์ด PHP Knowledge
0
36
จ 15 ก.ค. 2019 5:33 pm โดย Patipat
เราจะ SELECT หลายตาราง ออกมาใช้งานโดนที่ไม่ต้องเชื่อมตารางกันได้ไหมครับ
โดย jamepiyawat จ 15 ก.ค. 2019 5:10 pm บอร์ด SQL - Database
1
41
จ 15 ก.ค. 2019 5:56 pm โดย tsukasaz
ทำไมเมื่อวานมันยังได้ ????
โดย chatee supasand จ 15 ก.ค. 2019 5:09 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
28
จ 15 ก.ค. 2019 5:09 pm โดย chatee supasand
สอบถามครับ-เรียกฐานข้อมูลมาแสดง เป็นภาษาไทยไม่ได้อะครับ ขึ้น error Ascii
โดย chatee supasand จ 15 ก.ค. 2019 4:17 pm บอร์ด Programming - C/C++ & java & Python
2
49
จ 15 ก.ค. 2019 8:12 pm โดย chatee supasand
รู้จักกับ ฟังก์ชัน hypot() - ใช้คำนวณความยาวตรงข้ามด้านสามเหลี่ยมมุมฉาก
โดย Patipat จ 15 ก.ค. 2019 4:08 pm บอร์ด PHP Knowledge
1
29
จ 15 ก.ค. 2019 4:27 pm โดย mindphp
ศึกษาทำความเข้าใจ-บุญนำพา
โดย EyePornnipa จ 15 ก.ค. 2019 3:42 pm บอร์ด M089 - นางสาวพรนิภา ราชธานี
0
14
จ 15 ก.ค. 2019 3:42 pm โดย EyePornnipa
สอบถาม การติดตั้ง library ด้วย requirements.txt
โดย jirawoot จ 15 ก.ค. 2019 2:57 pm บอร์ด Programming - C/C++ & java & Python
3
40
จ 15 ก.ค. 2019 4:39 pm โดย jirawoot
ใช้งานหลายหน้าจอด้วย desktops V2.0 บน Windows
โดย chatee supasand จ 15 ก.ค. 2019 12:00 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
24
จ 15 ก.ค. 2019 12:00 pm โดย chatee supasand
อยากทราบวิธีทำให้ สไลด์โชว์สินค้า เป็นแบบ Responsive แสดง Product ตามที่เรากำหนดขนาดหน้าจอ
โดย Patipat จ 15 ก.ค. 2019 11:52 am บอร์ด Joomla Development
6
51
จ 15 ก.ค. 2019 3:01 pm โดย Patipat
รับสมัคร Helpdesk, Programmer, Tester, System
โดย ปัทมา แซ่เฮ้ง จ 15 ก.ค. 2019 11:51 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
20
จ 15 ก.ค. 2019 11:51 am โดย ปัทมา แซ่เฮ้ง
สอบถาม path directory ของ server ubuntu หน่อยครับ
โดย jirawoot จ 15 ก.ค. 2019 11:12 am บอร์ด Programming - C/C++ & java & Python
2
42
จ 15 ก.ค. 2019 7:50 pm โดย jirawoot
Q - ลืมหัก ณ ที่จ่าย ควรจะทำยังไงดีค่ะ
โดย EyePornnipa จ 15 ก.ค. 2019 10:26 am บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
2
37
จ 15 ก.ค. 2019 11:54 am โดย EyePornnipa
งานประจำวันที่ 15 กรกฎาคม 2562
โดย Patipat จ 15 ก.ค. 2019 10:19 am บอร์ด M088 - ปฏิภัทร สารธรรม
2
17
จ 15 ก.ค. 2019 8:31 pm โดย Patipat
วิธีขอ API จาก Google กรณีอยากใส่ Map ในเว็บไซต์
โดย idsittikorn จ 15 ก.ค. 2019 10:13 am บอร์ด HTML CSS
0
32
จ 15 ก.ค. 2019 10:13 am โดย idsittikorn