ให้เรตสมาชิก: 3 / 5

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

array_replace_recursive () 

array_replace_recursive () เป็นฟังก์ชั่นใน PHP inbuilt ใช้ในการแทนที่ค่าของอาร์เรย์แรกที่มีค่าจากอาร์เรย์ซ้ำต่อไป จะทำการแทนที่ด้านล่างนี้:

  • หากคีย์จากอาร์เรย์แรกมีอยู่ในอาร์เรย์ที่สองดังนั้นค่าที่สอดคล้องกับคีย์นั้นของอาร์เรย์แรกจะถูกแทนที่ด้วยค่าของอาร์เรย์ที่สอง
  • หากคีย์มีอยู่ในอาเรย์ที่สอง แต่ไม่ได้อยู่ในอาเรย์แรกมันจะถูกสร้างขึ้นในอาเรย์แรก
  • หากคีย์มีอยู่ในอาเรย์แรกเท่านั้นมันจะถูกทิ้งไว้ตามที่เป็นอยู่
  • หากมีหลายอาร์เรย์ถูกส่งผ่านเพื่อแทนที่พวกเขาจะถูกประมวลผลตามลำดับอาร์เรย์ในภายหลังจะเขียนทับค่าก่อนหน้า

รูปแบบ Syntax ดังนี้ 

array_replace_recursive ($ array1, $ array2, $ array3 ... )

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

Return Value : ส่งคืนอาเรย์ที่ถูกปรับเปลี่ยนหรือ NULL ถ้ามีข้อผิดพลาดเกิดขึ้น

 

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

<?php 

// PHP program to illustrate array_replace_recursive() 
// function 

$array1 = array( "a" => array("red"), 
			"b" => array("green", "blue")); 
$array2=array( "a" => array("yellow"), 
					"b" => array("black")); 
$array3=array("a" => array("orange"), 
				"b" => array("burgundy")); 

print_r(array_replace_recursive($array1, $array2, $array3)); 

?> 

ผลลัพธ์ที่ได้

Array
(
    [a] => Array
        (
            [0] => orange
        )

    [b] => Array
        (
            [0] => burgundy
            [1] => blue
        )

)

จากตัวอย่างเราได้ใช้ฟังก์ชัน print_r() เพื่อแสดงข้อมูลใน array จะเห็นว่า ค่าของตัวแรกแต่ละคีย์ถูกเปลี่ยน โดยจะกลายเป็น อาเรย์ลำดับสุดที่มีอยู่ในฟังก์ชัน ส่วน ค่าอาเรย์บ[1] ในคีย์ของ [b] นั้น ยังเป็น blue เหมือนเดิมเนื่องจากว่า ในฟังก์ชันไม่มีอาเรย์ตัวไหนทีจะมาเขียนทับ เพราะอยู่ในตำแหน่งที่[1] แต่อาเรย์ที่มาใหม่นั้นตำแหน่งที่[0]ทั้งนั้นครับ หวังจะเข้าใจน่ะครับ 

 

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

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
งานประจำวันที่ 12 กันยายน 2562
โดย jirawoot พฤ 12 ก.ย. 2019 10:09 am บอร์ด M090 - นายจิระวุฒิ อัครลิขิตกุล
1
8
พฤ 12 ก.ย. 2019 7:50 pm โดย jirawoot
งานประจำวันที่ 12 กันยายน 2562
โดย jamepiyawat พฤ 12 ก.ย. 2019 10:08 am บอร์ด M084 - นายปิยวัช เชาว์วิมล
4
20
ศ 13 ก.ย. 2019 1:45 pm โดย Ittichai_chupol
งานประจำวันที่ 12 กันยายน 2562
โดย aninthana พฤ 12 ก.ย. 2019 9:55 am บอร์ด M092 - อนินธนา บุญยัง
2
21
พฤ 12 ก.ย. 2019 11:35 pm โดย thatsawan
งานประจำวันที่ 12 กันยายน 2562
โดย chatee supasand พฤ 12 ก.ย. 2019 9:49 am บอร์ด MT33 - นายชาตรี สุภาแสน
1
9
พฤ 12 ก.ย. 2019 7:23 pm โดย chatee supasand
md gallery สามารถ สร้าง ลบ ในหน้าเว็บได้ไหมครับ
โดย Jahari Aum พ 11 ก.ย. 2019 11:47 pm บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS CRM
1
67
พฤ 12 ก.ย. 2019 12:28 am โดย mindphp
ศึกษาการใช้งานในระบบ Open ERP
โดย aninthana พ 11 ก.ย. 2019 6:51 pm บอร์ด M092 - อนินธนา บุญยัง
4
43
ส 14 ก.ย. 2019 6:06 pm โดย aninthana
เช็คลิส อัด VDO ขั้นตอนการทำงานจริง
โดย EyePornnipa พ 11 ก.ย. 2019 6:48 pm บอร์ด M089 - นางสาวพรนิภา ราชธานี
7
31
พฤ 12 ก.ย. 2019 12:18 pm โดย EyePornnipa
วิธีการสมัครเข้าใช้งาน Skype
โดย chatee supasand พ 11 ก.ย. 2019 6:38 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
44
พ 11 ก.ย. 2019 6:38 pm โดย chatee supasand
YouTube.com/Fashion ช่อง YouTube ที่มีเฉพาะคอนเทนต์แฟชั่นและความสวยงามเท่านั้น
โดย jamepiyawat พ 11 ก.ย. 2019 5:46 pm บอร์ด Share Knowledge
0
33
พ 11 ก.ย. 2019 5:46 pm โดย jamepiyawat
การเลือกดึงข้อมูลในอาเรย์บางตัวมาใช้งาน ในรูปแบบ foreach
โดย Patipat พ 11 ก.ย. 2019 5:33 pm บอร์ด Joomla Developing Knowledge
0
38
พ 11 ก.ย. 2019 5:33 pm โดย Patipat
อยากให้แท็ก input กับแท็ก img อยู่ในบรรทัดเดียวกันครับ
โดย jamepiyawat พ 11 ก.ย. 2019 5:02 pm บอร์ด Joomla Development
2
48
พ 11 ก.ย. 2019 5:41 pm โดย jamepiyawat
ทำไมเรียกใช้ข้อมูลในอาเรย์แล้ว ไม่มีค่าเลยครับ
โดย Patipat พ 11 ก.ย. 2019 4:05 pm บอร์ด Joomla Development
3
50
พ 11 ก.ย. 2019 4:19 pm โดย tsukasaz
ความหมายของคำว่าเดบิตและเครดิต
โดย EyePornnipa พ 11 ก.ย. 2019 3:52 pm บอร์ด ถาม - ตอบ ธุรกิจ กฏหมาย ภาษี บัญชี
0
8
พ 11 ก.ย. 2019 3:52 pm โดย EyePornnipa
HOSxP คืออะไร
โดย EyePornnipa พ 11 ก.ย. 2019 12:20 pm บอร์ด Microsoft Office Knowledge & line & Etc
1
57
พ 11 ก.ย. 2019 1:50 pm โดย ppim
จะนำข้อมูลใน [name_en-GB] มาใช้งานอย่างไรครับ
โดย Patipat พ 11 ก.ย. 2019 11:47 am บอร์ด Joomla Development
0
47
พ 11 ก.ย. 2019 11:47 am โดย Patipat
งานประจำวันที่ 11 กันยายน 2562
โดย Patipat พ 11 ก.ย. 2019 10:24 am บอร์ด M088 - ปฏิภัทร สารธรรม
1
7
พ 11 ก.ย. 2019 7:56 pm โดย Patipat
งานประจำวันที่ 11 กันยายน 2562
โดย aninthana พ 11 ก.ย. 2019 10:18 am บอร์ด M092 - อนินธนา บุญยัง
2
18
พ 11 ก.ย. 2019 7:10 pm โดย aninthana
งานประจำวันที่ 11 กันยายน 2562
โดย jamepiyawat พ 11 ก.ย. 2019 10:06 am บอร์ด M084 - นายปิยวัช เชาว์วิมล
1
11
พ 11 ก.ย. 2019 7:57 pm โดย jamepiyawat
งานประจำวันที่ 11 กันยายน 2562
โดย jirawoot พ 11 ก.ย. 2019 10:05 am บอร์ด M090 - นายจิระวุฒิ อัครลิขิตกุล
1
5
พ 11 ก.ย. 2019 7:45 pm โดย jirawoot
งานประจำวันที่ 11 กันยายน 2562
โดย EyePornnipa พ 11 ก.ย. 2019 10:02 am บอร์ด M089 - นางสาวพรนิภา ราชธานี
2
52
พ 11 ก.ย. 2019 7:21 pm โดย EyePornnipa