Hàm Ds\Map::filter() trong PHP là một hàm hữu ích để lọc các phần tử của một Ds\Map. Hàm này có thể được sử dụng trong nhiều tình huống khác nhau, chẳng hạn như lọc các phần tử có giá trị nhất định, hoặc lọc các phần tử thỏa mãn một điều kiện nhất định. Hãy cùng Vietnix tìm hiểu thêm về hàm này qua bài viết sau đây.

Hàm Ds\Map::filter() là gì?

Hàm Ds\Map::filter() là một hàm có sẵn trong PHP, được sử dụng để tạo map mới bằng hàm filter. Bằng cách sử dụng Hàm Ds\Map::filter(), bạn có thể dễ dàng thực hiện các tác vụ như lọc dữ liệu từ cơ sở dữ liệu, tạo các bản đồ mới dựa trên điều kiện cụ thể, hoặc thậm chí là xử lý dữ liệu người dùng đầu vào.

Hàm Ds\Map::filter() trong PHP
Tìm hiểu về hàm Ds\Map::filter() trong PHP và cách triển khai hàm.

Hàm được sử dụng để tạo một map mới chứa các cặp khóa-giá trị từ map gốc thoả mãn một điều kiện được xác định bởi một hàm callback. Điều này cho phép người dùng lọc ra các phần tử dựa trên một tiêu chí cụ thể.

Trong đó:

Lưu ý rằng hàm ` không ảnh hưởng đến map gốc, mà tạo ra một map mới dựa trên kết quả của việc áp dụng hàm callback. Sử dụng Ds\Map::filter(), bạn có thể linh hoạt lọc và tạo các bản sao của map gốc, giúp quản lý và trích xuất thông tin theo các tiêu chí cụ thể.

Cú pháppublic Ds\Map::filter( $callback )
Tham sốHàm Ds\Map::filter() là một hàm hữu ích để lọc các phần tử của một Ds\Map. Hàm này nhận vào một hàm callback làm tham số, và sẽ chỉ giữ lại các phần tử mà hàm callback trả về giá trị true.
Giá trị trả vềHàm filter() trả về một map mới chứa các cặp key-value thỏa điều kiện đã được xác định bởi hàm callback. Map này chứa tất cả các cặp mà lệnh gọi lại trả về True hoặc tất cả các giá trị chuyển đổi thành True nếu hàm callback không được cung cấp.
Hàm Ds\Map::filter() trong PHP

Mọi người cũng xem:

Ví dụ minh hoạ hàm Ds\Map::filter() trong PHP

Ví dụ 1:

<?php 
// PHP program to illustrate the filter() 
// function of Ds\map 

// Creating a Map 
$map = new \Ds\Map([
	1 => "Welcome",
	2 => "to",
	3 => "Vietnix", 
	4 => "VPS",
	5 => "Hosting"]);
			

// Display new sequence using filter function 
var_dump($map->filter(function($key, $val) { 
	return $key % 3 == 0; 
})); 

?>

Output như sau:

object(Ds\Map)#3 (1) {
  [0]=>
  object(Ds\Pair)#2 (2) {
    ["key"]=>
    int(3)
    ["value"]=>
    string(5) "Vietnix"
  }
}

Ví dụ 2:

<?php 
// PHP program to illustrate the filter() 
// function of Ds\map 

// Creating a Map 
$map = new \Ds\Map([
		1 => 10, 
		2 => 20,
		3 => 30, 
		4 => 40,
		5 => 50]); 
			
// Display new sequence using filter function 
var_dump($map->filter(function($key, $val) { 
	return $val % 20 == 0; 
})); 

?> 

Output trả về kết quả là:

object(Ds\Map)#3 (2) {
  [0]=>
  object(Ds\Pair)#2 (2) {
    ["key"]=>
    int(2)
    ["value"]=>
    int(20)
  }
  [1]=>
  object(Ds\Pair)#4 (2) {
    ["key"]=>
    int(4)
    ["value"]=>
    int(40)
  }
}

Lời kết

Vietnix hy vọng nội dung bài viết trên đã giúp bạn hiểu rõ hơn về Ds\Map::filter() trong PHP và cách triển khai qua các ví dụ. Ngoài ra, bạn cũng có thể tham khảo thêm các bài viết khác tại vietnix.vn để hiểu hơn về lập trình PHP, chúc bạn thành công!