Tạo một mảng php duy nhất
Nếu bạn có một mảng các đối tượng được lập chỉ mục và bạn muốn loại bỏ các mục trùng lặp bằng cách so sánh một thuộc tính cụ thể trong từng đối tượng, thì có thể sử dụng một hàm như hàm Show
Kết quả là
________số 8
Tiếp tục đọc để tạo một hệ thống kiểm tra danh tính không cho phép nhiều mục nhập mảng dựa trên các giá trị lặp lại nội dung PHP array_unique là gì?Hàm PHP array_unique chấp nhận một mảng, loại bỏ tất cả các giá trị trùng lặp của nó và trả về mảng. Sẽ rất hữu ích nếu bạn lưu ý rằng các khóa của các giá trị duy nhất sẽ được giữ nguyên. Vì vậy, chức năng đã cho dễ sử dụng như giấy lọc tùy chỉnh chỉ cho phép các giá trị duy nhất được tìm thấy đầu tiên đi qua nó. Bây giờ, hãy xem cú pháp của nó. array_unique(mảng, cờ) . Ở đây, tham số cờ là tùy chọn và giá trị mặc định của nó được đặt thành “SORT_STRING,” có nghĩa là các giá trị mảng sẽ được so sánh dưới dạng chuỗi. Ngoài ra, bạn có thể sử dụng các cờ sau để tùy chỉnh so sánh
– Ví dụ mã hóaVí dụ: giả sử rằng chương trình của bạn chứa một mảng có thể chứa các giá trị trùng lặp. Vì vậy, ở đây bạn sẽ sử dụng hàm duy nhất của mảng để loại bỏ các bản sao khỏi mảng PHP giống như đoạn mã được cung cấp bên dưới //tạo mảng động vật$animals = array(“Mèo”,”Chó”,”Hổ”,// creating an array of animals $animals = array(“Cat”,”Dog”,”Tiger”,”Lion”,”Cat”); // using the PHP array_unique function and printing the unique array print_r(array_unique($animals)); ?> Đầu ra sau đây sẽ được hiển thị trên trình duyệt của bạn Mảng ( [0] => Mèo [1] => Chó [2] => Hổ [3] => Sư tử )Array_unique trong PHP. Làm việc với các mảng kết hợpChức năng của hàm duy nhất mảng PHP có thay đổi khi bạn sử dụng nó với một mảng kết hợp không? – Ví dụ mã hóa cho mảng PHP_unique với mảng kết hợpVí dụ: bạn có một mảng kết hợp gồm các loại trái cây nhưng có khả năng mảng đó có thể chứa các tên trái cây giống nhau nhiều lần. Vì vậy, trong tình huống này, bạn sẽ sử dụng hàm duy nhất mảng PHP để lấy một mảng các tên trái cây duy nhất Vui lòng tham khảo đoạn mã ví dụ sau về hàm duy nhất của mảng PHP ?php// tạo mảng trái cây $fruits = array( “One” = “Two” => “Apple”, “Three” => “Strawberry”, “Four” => “Pineapple”, “Two” => “Apple”, // duplicate value “Five” => “Mango”, // duplicate value ); // using the PHP array_unique function and printing the unique array print_r(array_unique($fruits)); ?> Đây là đầu ra mà bạn sẽ nhận được Mảng ( [Một] => Xoài [Hai] => Táo [Ba] => Dâu [Bốn] => Dứa )Giá trị duy nhất của mảng PHP. Mảng đa chiềuHàm duy nhất của mảng PHP có thể giúp xử lý sự trùng lặp trong các mảng nhiều chiều không? . Tạo một hàm do người dùng xác định có thể giúp bạn loại bỏ các mảng trùng lặp khỏi mảng chính dựa trên một khóa cụ thể. Tuy nhiên, hãy nhớ rằng các khóa của mảng ban đầu sẽ không được giữ nguyên – Ví dụ mã hóaVí dụ, có thể xảy ra trường hợp bạn có một mảng nhiều chiều chứa thông tin chi tiết về nhân viên. Bây giờ, bạn muốn xóa toàn bộ mảng bên trong nếu khóa id của nó có giá trị trùng lặp. Vì vậy, bạn sẽ tạo một hàm tùy chỉnh chấp nhận một mảng và một khóa. Hàm tùy chỉnh sử dụng vòng lặp foreach và hàm in_array() để . Bây giờ, hãy xem đoạn mã này sẽ giúp bạn hiểu ví dụ này dễ dàng hơn //tạo mảng chi tiết nhân viên$emp = array(array( . in_array($val[$key], $array_of_keys)) {$array_of_keys[$i] = $val[$key];$Myarray[$// creating an array of employee details $emp = array( array(“id” => 1,”Position” => “Manager”,”Date” => “01-June-2020”), array(“id” => 2,”Position” => “IT Incharge”, “Date” => “02-July-2020”), array(“id” => 3,”Position” => “Accountant”,”Date” => “02-July-2020”), array(“id” => 1,”Position” => “HR”, “Date” => “03-June-2020”), ); // creating a custom function function multi_unique_array($arr, $key) { $Myarray = array(); $i = 0; $array_of_keys = array(); foreach($arr as $val) { if (!in_array($val[$key], $array_of_keys)) { $array_of_keys[$i] = $val[$key]; $Myarray[$i] = $val; } $i++; } return $Myarray; } // calling the custom function with array and id key $unique = multi_unique_array($emp,”id”); // printing the multidimensional array with unique ids print_r($unique); ?> Bạn sẽ nhận được kết quả bên dưới sau khi chạy đoạn mã trên Mảng ([0] => Mảng ( [id] => 1 [Vị trí] => Người quản lý [Ngày] => 01-Tháng 6-2020 ) [1] => Array ( [id] => 2 [Position] => IT Incharge [Date] => 02-July-2020 ) [2] => Array ( [id] => 3 [Position] => Accountant [Date] => 02-July-2020 ) ) - Ghi chúKhông cần thiết phải có một mảng nhiều chiều với các khóa được đặt tên để sử dụng chức năng trên. Bạn có thể chỉ cần chuyển “0” làm đối số thứ hai để xóa tất cả các mảng bên trong chứa ngay cả một giá trị trùng lặp Mảng PHP Xóa trùng lặp. Chỉ các mảng lặp đi lặp lạiChắc chắn, các mảng bên trong của một mảng nhiều chiều có thể không chứa tất cả các giá trị trùng lặp. Ngoài ra, có thể xảy ra trường hợp bạn không muốn xóa các mảng bên trong dựa trên một giá trị trùng lặp duy nhất như đã thảo luận trong ví dụ trên Trong trường hợp đó, bạn có muốn kiểm tra tất cả các giá trị của các mảng bên trong trước khi xóa chúng không? Vậy thì đừng lo lắng; – Ví dụ mã hóaVí dụ: giả sử bạn có một mảng sinh viên đa chiều, trong đó mỗi mảng bên trong bao gồm hai giá trị đại diện cho id sinh viên và chủ đề. Tại đây, một sinh viên có thể học nhiều môn. Hơn nữa, cùng một chủ đề có thể được lựa chọn bởi các sinh viên khác nhau. Vì vậy, bạn chỉ muốn xóa những mảng bên trong bị trùng lặp hoàn toàn Vui lòng xem đoạn mã ví dụ được đưa ra bên dưới $student = array(array(“std1″,”English”),$array3[] = $val;$Myarray[] = $val;$student = array( array(“std1″,”English”), array(“std1″,”Physics”), array(“std2″,”English”), array(“std2″,”Chemistry”), array(“std2″,”Physics”), array(“std3″,”English”), array(“std2″,”English”), // duplicate array(“std3″,”Sociology”), array(“std3″,”Sociology”), // duplicate array(“std4″,”English”), array(“std1″,”Physics”), // duplicate array(“std4″,”Chemistry”) ); // creating a custom function function multi_unique($array) { $Myarray = array(); $array3 = array(); foreach($array as $val) { if (!in_array($val, $array3)) { $array3[] = $val; $Myarray[] = $val; } } return $Myarray; } $res = multi_unique($student); print_r($res); ?> Đây sẽ là đầu ra hiển thị trên trình duyệt Mảng ([0] => Mảng ( [0] => std1 [1] => Tiếng Anh) [1] => [2] => Array ( [0] => std2 [1] => English ) [3] => Array ( [0] => std2 [1] => Chemistry ) [4] => Array ( [0] => std2 [1] => Physics ) [5] => Array ( [0] => std3 [1] => English ) [6] => Array ( [0] => std3 [1] => Sociology ) [7] => Array ( [0] => std4 [1] => English ) [8] => Array ( [0] => std4 [1] => Chemistry ) ) - Ghi chúHàm tùy chỉnh được sử dụng trong đoạn mã trên sẽ không bảo toàn các khóa của mảng ban đầu. Nếu bạn muốn bảo quản các phím thì hãy thử phương pháp sau Nhận các giá trị duy nhất từ mảng. Sử dụng hàm mảngMặc dù các hàm do người dùng định nghĩa giúp lấy các giá trị duy nhất từ các mảng nhiều chiều, nhưng việc duy trì các khóa cũng có thể là một nhiệm vụ quan trọng. Do đó, sự kết hợp của các hàm mảng như array_intersect_key, PHP array_unique và array_map có thể giúp giải quyết vấn đề. Tuy nhiên, bạn sẽ không thể xóa các mảng bên trong dựa trên một khóa cụ thể bằng cách sử dụng kết hợp đã nêu – Ví dụ mã hóa để sử dụng mảng PHP duy nhất với các chức năng khácLàm việc trên cùng một kịch bản với ví dụ trước, đây là đoạn mã sẽ giúp bạn bảo quản các khóa $get_unique = array_intersect_key($student , array_unique(array_map('serialize' , $student)));print_r($get_unique = array_intersect_key($student , array_unique(array_map(‘serialize’ , $student))); print_r($get_unique); ?> Đây sẽ là đầu ra Mảng ([0] => Mảng ( [0] => std1 [1] => Tiếng Anh) [1] => [2] => Array ( [0] => std2 [1] => English ) [3] => Array ( [0] => std2 [1] => Chemistry ) [4] => Array ( [0] => std2 [1] => Physics ) [5] => Array ( [0] => std3 [1] => English ) [7] => Array ( [0] => std3 [1] => Sociology ) [9] => Array ( [0] => std4 [1] => English ) [11] => Array ( [0] => std4 [1] => Chemistry ) ) Phần kết luậnHàm duy nhất của mảng PHP giúp nhận các giá trị duy nhất từ cả mảng được lập chỉ mục và mảng kết hợp. Ngoài ra, nó hoạt động với các hàm mảng khác để xử lý sự trùng lặp trong mảng nhiều chiều. Mặc dù bạn đã học đủ về cách làm cho mảng trở nên độc đáo, đây là một vài điểm quan trọng để giúp bạn hiểu rõ hơn về chủ đề này
5/5 - (21 phiếu) Vị trí là tất cả Vị trí là tất cả. Tài nguyên Go-To của bạn để Tìm hiểu & Xây dựng. CSS, JavaScript, HTML, PHP, C++ và MYSQL Làm cách nào để nhận các giá trị duy nhất từ hai mảng trong PHP?Hàm array_diff() so sánh giá trị của hai (hoặc nhiều) mảng và trả về sự khác biệt. Hàm này so sánh các giá trị của hai (hoặc nhiều) mảng và trả về một mảng chứa các mục từ mảng1 không có trong mảng2 hoặc mảng3, v.v.
+= có hoạt động trên các mảng trong PHP không?Toán tử + trong PHP khi được áp dụng cho mảng sẽ thực hiện công việc của mảng UNION . mảng $arr += mảng $arr1; .
Làm cách nào để lập chỉ mục lại một mảng trong PHP?Việc lập chỉ mục lại của một mảng có thể được thực hiện bằng cách sử dụng một số hàm sẵn có cùng nhau . Các chức năng này là. hàm array_combine(). Hàm array_combine() là một hàm sẵn có trong PHP, được sử dụng để kết hợp hai mảng và tạo một mảng mới bằng cách sử dụng một mảng cho các khóa và một mảng khác cho các giá trị.
Làm cách nào để lấy cùng một giá trị trong mảng trong PHP?Hàm array_intersect() so sánh giá trị của hai (hoặc nhiều) mảng và trả về kết quả khớp. Hàm này so sánh các giá trị của hai hoặc nhiều mảng và trả về một mảng chứa các mục từ mảng1 có trong mảng2, mảng3, v.v. |