array_replace() trong php

Hàm array_replace() sẽ thay thế các phần tử của mảng đầu tiên bằng các phần tử của mảng thứ hai nếu chúng có cùng khóa. Nếu khóa của phần tử chỉ tồn tại ở mảng thứ nhất, phần tử đó sẽ được giữ nguyên. Nếu khóa chỉ tồn tại ở mảng thứ hai, phân tử đó sẽ được thêm vào cuối mảng một.Nếu có nhiều hơn 2 mảng truyền vào, các mảng truyền vào sẽ được ưu tiên thay thế đè lên mảng trước đó nếu có khóa trùng nhau.

Cú pháp

Cú pháparray_replace($array1, $array2 [, $array3...]);

Trong đó:

  • $array1 là mảng gốc để thay thế.
  • $array2, $array3 ... là các mảng truyền vào, để so sánh khóa với mảng $array1 và thay thế.

Kết quả trả về là một mảng mới với các phần tử đã được thay thế.

Ví dụ

Code
$array = array(
	0=>"php",
	1=>"js",
	2=>"python",
	5=>"html"
);
$replacements = array(
	0 => "css",
	3 => "C#"
);
$replacements2 = array(
	0 => "java"
);

$result = array_replace($array, $replacements, $replacements2);
echo "<pre>";
	print_r($result);
echo "</pre>";

Kết quả
Array
(
    [0] => java
    [1] => js
    [2] => python
    [5] => html
    [3] => C#
)

Ta có thể thấy, phần tử có khóa bằng 0 ở mảng $array đã bị thay thế bằng phần tử cũng có khóa bằng 0 ở mảng $replacements2 vì nó được truyền vào sau cùng.

Tham khảo:php.net

Các loại function khác

Nguồn: freetuts.net