๒๗ พ.ย. ๒๕๕๐

ถ้าต้องการรวม Array 2 ตัวเข้าด้วยกัน ทำอย่างไร

ถ้าต้องการรวม Array 2 ตัวเข้าด้วยกัน ทำอย่างไร

array_merge -- ใช้สำหรับรวม Array ตั้งแต่ 1 ตัวขึ้นไป เข้าด้วยกัน และจะคืนค่ากลับมาเป็น Array โดยการทำงานของฟังก์ชั่นนี้ จะนำเอา Array ตัวที่ 2 ต่อท้าย Array ตัวที่หนึ่ง

ยกเว้น ในกรณีที่ Array ตัวที่ 1 และ Array ตัวที่ 2 มีคีย์ที่เหมือนกัน ฟังก์ชั่นนี้ จะเอาค่าใน Array ตัวที่ 2 ไปแทนที่ Array ตัวที่ 1 พูดง่ายๆ ถ้าคีย์เหมือนกันใน ในทั้ง 2 Array ผลลัพธ์ จะเหลือแค่ ค่าเดียวและเป็นค่าจาก Array ตัวที่ 2 ด้วย

ยกเว้น ( อีกแล้ว ) Array ที่มีคีย์เป็นตัวเลข จะไม่ถูกแทนที่ แต่จะนำเอาไปต่อท้ายรวมกันเสมอ และข้อควรจำอย่างหนึ่งคือ เลขดัชนีจะถูก Reindex ใหม่

ดูตัวอย่าง คีย์เหมือนกัน ในทั้ง 2 Array

<?php
$array1
= array("color" => "red" );
$array2 = array("color" => "green");
$result = array_merge($array1, $array2);
print_r($result);
?>

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

Array
(
[color] => green
)

ดูตัวอย่าง คีย์เป็นตัวเลข จะไม่มีการแทนที่ แต่จะต่อท้ายรวมกันเสมอ

<?php
$array1
= array( 2, 4 );
$array2 = array( 4 );
$result = array_merge($array1, $array2);
print_r($result);
?>

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

Array
(
[0] => 2
[1] => 4
[2] => 4
)

นอกจากนี้แล้ว เรายังสามารถนำฟังก์ชั่นนี้ไปประยุกต์ใช้ Reindex ให้กับ Array

<?php
$array1
= array();
$array2 = array(1 => "data");
$result = array_merge($array1, $array2);
?>

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

Array
(
[0] => data
)

ทางเจ้าของภาษา PHP บอกว่า ถ้าคุณต้องการรักษาเลขดัชนี ของ Array ไว้เหมือนเดิม ในการรวม Array 2 ตัวเข้าด้วยกัน ให้ใช้ + แทน

ตัวอย่าง

$result = $array1 + $array2 ;

ไม่มีความคิดเห็น: