Hướng dẫn php remove false values from array - php loại bỏ các giá trị sai khỏi mảng

20

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Tôi có một mảng kết hợp với cả đống giá trị ____ 9/________ 10.

Tôi đang cố gắng loại bỏ tất cả các khóa trong đó các giá trị là ____10.

Vì vậy, nếu mảng là

array(
  'key1' => true,
  'key2' => false,
  'key3' => false,
  'key4' => true
);

Tôi muốn kết thúc với

array(
  'key1' => true,
  'key4' => true
);

Làm thế nào tôi sẽ làm điều này?

Hướng dẫn php remove false values from array - php loại bỏ các giá trị sai khỏi mảng

Đã hỏi ngày 23 tháng 11 năm 2010 lúc 13:18Nov 23, 2010 at 13:18

HailwoodhailwoodHailwood

87K105 Huy hiệu vàng264 Huy hiệu bạc420 Huy hiệu đồng105 gold badges264 silver badges420 bronze badges

$array = array_filter(array(
    'key1' => true,
    'key2' => false,
    'key3' => false,
    'key4' => true
));

array_filter()

Đã trả lời ngày 23 tháng 11 năm 2010 lúc 13:21Nov 23, 2010 at 13:21

KingcrunchKingCrunchKingCrunch

Huy hiệu vàng 126K2020 gold badges147 silver badges171 bronze badges

1

Đã trả lời ngày 23 tháng 11 năm 2010 lúc 13:21Nov 23, 2010 at 13:21

for (x=0; x < array.count; x++)
{
     if (key.value == false)
     {
          unset($arr[x]);
     }
}

KingcrunchKingCrunch

Huy hiệu vàng 126K20Nov 23, 2010 at 13:26

Chỉ cần psuedocode, vì vậy tôi hy vọng bạn hiểu ý tôi.Nick

Đã trả lời ngày 23 tháng 11 năm 2010 lúc 13:261 gold badge14 silver badges27 bronze badges

3

Biệt danh

$arr = ['key1' => TRUE, 'key2' => FALSE, 'key3' => FALSE, 'key4' => TRUE];

1.0821 Huy hiệu vàng14 Huy hiệu bạc27 Huy hiệu đồng

foreach ($arr as $key => $value)
    if ($value == FALSE)
        unset($arr[$key]);

ArrayDecleration (sử dụng tốc ký mảng Php 5.4):

print_r($arr);

Sau đó xóa tất cả các khóa và giá trị khỏi mảng trong đó value == false (tùy chọn sử dụng so sánh nghiêm ngặt "==="):

Kết quả in:Mar 24, 2012 at 12:03

Dòng cuối cùng này in "mảng ([key1] => 1 [key4] => 1)".Martin Andersson

Đã trả lời ngày 24 tháng 3 năm 2012 lúc 12:039 gold badges82 silver badges112 bronze badges

1

Chủ đề: PHP / mysqlprev | Tiếp theoPrev|Next

Trả lời: Sử dụng chức năng PHP array( 'key1' => true, 'key4' => true ); 2

Bạn có thể chỉ cần sử dụng hàm PHP

array(
  'key1' => true,
  'key4' => true
);
2 để xóa hoặc lọc các giá trị trống khỏi một mảng. Hàm này thường lọc các giá trị của một mảng bằng hàm gọi lại.

Tuy nhiên, nếu không có chức năng gọi lại được chỉ định, tất cả các mục trống của mảng sẽ bị xóa, chẳng hạn như

array(
  'key1' => true,
  'key4' => true
);
4 (một chuỗi trống),
array(
  'key1' => true,
  'key4' => true
);
5 (0 dưới dạng số nguyên),
array(
  'key1' => true,
  'key4' => true
);
6 (0 dưới dạng float),
array(
  'key1' => true,
  'key4' => true
);
7 (0 như một chuỗi) ,
array(
  'key1' => true,
  'key4' => true
);
8,
array(
  'key1' => true,
  'key4' => true
);
9 và
$array = array_filter(array(
    'key1' => true,
    'key2' => false,
    'key3' => false,
    'key4' => true
));
0 (một mảng trống). Hãy thử một ví dụ để hiểu cách nó thực sự hoạt động:

";
 
// Filtering the array
$result = array_filter($array);                 
var_dump($result);
?>

Trong ví dụ trên, các giá trị

array(
  'key1' => true,
  'key4' => true
);
5 và
array(
  'key1' => true,
  'key4' => true
);
7 cũng được xóa khỏi mảng. Nếu bạn muốn giữ chúng, bạn có thể xác định chức năng gọi lại như trong ví dụ sau:

";
 
// Defining a callback function
function myFilter($var){
    return ($var !== NULL && $var !== FALSE && $var !== "");
}

// Filtering the array
$result = array_filter($array, "myFilter");     
var_dump($result);
?>

Hàm gọi lại

$array = array_filter(array(
    'key1' => true,
    'key2' => false,
    'key3' => false,
    'key4' => true
));
3 được gọi cho mỗi phần tử của mảng. Nếu
$array = array_filter(array(
    'key1' => true,
    'key2' => false,
    'key3' => false,
    'key4' => true
));
3 trả về
$array = array_filter(array(
    'key1' => true,
    'key2' => false,
    'key3' => false,
    'key4' => true
));
5, thì phần tử đó sẽ được gắn vào mảng kết quả, nếu không thì không.


Câu hỏi thường gặp liên quan

Dưới đây là một số Câu hỏi thường gặp liên quan đến chủ đề này:

  • Cách xóa các giá trị trùng lặp khỏi một mảng trong PHP
  • Cách xóa phần tử đầu tiên khỏi một mảng trong PHP
  • Cách xóa phần tử cuối cùng khỏi một mảng trong PHP
  • Cách xóa một phần tử khỏi một mảng trong PHP

Làm thế nào để bạn loại bỏ khoảng trống khỏi một mảng?

Một cách tiếp cận khác là loại bỏ các phần tử trống khỏi mảng là sử dụng hàm trống () cùng với hàm unSet (). Hàm trống () được sử dụng để kiểm tra xem một phần tử có trống hay không.using empty() function along with the unset() function. The empty() function is used to check if an element is empty or not.

Làm thế nào để bạn loại bỏ các giá trị giả từ một mảng?

Chúng tôi sử dụng phương thức bộ lọc để loại bỏ các giá trị giả từ một mảng.Phương thức bộ lọc lọc tất cả các giá trị trả về sai khi được chuyển đến một hàm.Khi bạn sử dụng bộ lọc và vượt qua hàm tạo boolean, bạn có thể nhanh chóng lọc tất cả các giá trị giả từ mảng.use the filter method to remove falsy values from an array. The filter method filters out all the values that return false when passed to a function. When you use filter and pass a Boolean constructor, you can quickly filter out all the falsy values from the array.

Làm thế nào để bạn giải quyết một giá trị trong một mảng?

Sử dụng hàm unSet (): hàm unset () được sử dụng để loại bỏ phần tử khỏi mảng.Hàm Untet được sử dụng để phá hủy bất kỳ biến nào khác và cùng cách sử dụng để xóa bất kỳ yếu tố nào của mảng.: The unset() function is used to remove element from the array. The unset function is used to destroy any other variable and same way use to delete any element of an array.

Array_filter PHP là gì?

Hàm mảng_filter () lọc các giá trị của một mảng bằng hàm gọi lại.Hàm này chuyển từng giá trị của mảng đầu vào đến hàm gọi lại.Nếu hàm gọi lại trả về true, giá trị hiện tại từ đầu vào được trả lại vào mảng kết quả.Các phím mảng được bảo tồn.filters the values of an array using a callback function. This function passes each value of the input array to the callback function. If the callback function returns true, the current value from input is returned into the result array. Array keys are preserved.