Bộ lọc mảng PHP chỉ có giá trị null

Hàm này chuyển từng giá trị của mảng đầu vào cho 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ả về mảng kết quả. Các khóa của mảng được giữ nguyên

Để xóa giá trị null trong PHP, hãy sử dụng array_filter(). Nó lọc các giá trị mảng. Giả sử sau đây là mảng của chúng ta -

$studentDetails = array("firstName" => "John",  "lastName"=> null);
echo "The original value is=";print_r($studentDetails);

Hãy lọc với array_filter() −

$result = array_filter($studentDetails);

Thí dụ

Bản thử trực tiếp



 "John",  "lastName"=> null);
   echo "The original value is=";
   print_r($studentDetails);
   $result = array_filter($studentDetails);
   echo "
";      echo "After removing null part,the result is=";    print_r($result); ?>

đầu ra

The original value is=Array ( [firstName] => John [lastName] => )
After removing null part,the result is=Array ( [firstName] => John )

Bộ lọc mảng PHP chỉ có giá trị null


Bộ lọc mảng PHP chỉ có giá trị null

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

$result = array_filter($studentDetails);
1 để 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 nào đượ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ư

$result = array_filter($studentDetails);
2 (chuỗi rỗng),
$result = array_filter($studentDetails);
3 (0 dưới dạng số nguyên),
$result = array_filter($studentDetails);
4 (0 dưới dạng float),
$result = array_filter($studentDetails);
5 (0 dưới dạng chuỗi) . Hãy thử một ví dụ để hiểu nó thực sự hoạt động như thế nào

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

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

$result = array_filter($studentDetails);
3 và
$result = array_filter($studentDetails);
5 cũng bị xóa khỏi mảng. Nếu bạn muốn giữ chúng, bạn có thể xác định hàm 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

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

// Filtering the array
$result = array_filter($array, "myFilter");     
var_dump($result);
?>
3 được gọi cho từng phần tử của mảng. Nếu
";
 
// Defining a callback function
function myFilter($var){
    return ($var !== NULL && $var !== FALSE && $var !== "");
}

// Filtering the array
$result = array_filter($array, "myFilter");     
var_dump($result);
?>
3 trả về
";
 
// Defining a callback function
function myFilter($var){
    return ($var !== NULL && $var !== FALSE && $var !== "");
}

// Filtering the array
$result = array_filter($array, "myFilter");     
var_dump($result);
?>
5, thì phần tử đó sẽ được thêm vào mảng kết quả, nếu không thì không

Một phương pháp thuận tiện để loại bỏ tất cả các giá trị



 "John",  "lastName"=> null);
   echo "The original value is=";
   print_r($studentDetails);
   $result = array_filter($studentDetails);
   echo "
";      echo "After removing null part,the result is=";    print_r($result); ?>
0 khỏi một mảng trong PHP là sử dụng hàm
$result = array_filter($studentDetails);
1. Như tên cho thấy phương thức lọc một mảng nhất định, nếu bạn không cung cấp hàm lọc của riêng mình thì PHP sẽ lọc ra tất cả các giá trị đánh giá là


 "John",  "lastName"=> null);
   echo "The original value is=";
   print_r($studentDetails);
   $result = array_filter($studentDetails);
   echo "
";      echo "After removing null part,the result is=";    print_r($result); ?>
2 trong một điều kiện;

Để chỉ lọc ra các giá trị



 "John",  "lastName"=> null);
   echo "The original value is=";
   print_r($studentDetails);
   $result = array_filter($studentDetails);
   echo "
";      echo "After removing null part,the result is=";    print_r($result); ?>
0 một cách rõ ràng, bạn nên chuyển hàm gọi lại của riêng mình cho hàm
$result = array_filter($studentDetails);
1. Hàm này chỉ trả về


 "John",  "lastName"=> null);
   echo "The original value is=";
   print_r($studentDetails);
   $result = array_filter($studentDetails);
   echo "
";      echo "After removing null part,the result is=";    print_r($result); ?>
2 nếu một giá trị đã cho bằng với


 "John",  "lastName"=> null);
   echo "The original value is=";
   print_r($studentDetails);
   $result = array_filter($studentDetails);
   echo "
";      echo "After removing null part,the result is=";    print_r($result); ?>
0

Sử dụng chức năng mũi tên giống như sau

$result = array_filter($studentDetails);
0

Như tôi đã đề cập ở trên, nếu bạn không tự cung cấp hàm gọi lại thì PHP sẽ lọc ra tất cả các giá trị đánh giá là



 "John",  "lastName"=> null);
   echo "The original value is=";
   print_r($studentDetails);
   $result = array_filter($studentDetails);
   echo "
";      echo "After removing null part,the result is=";    print_r($result); ?>
2. Vì vậy, điều đó cũng bao gồm các giá trị khác ngoài


 "John",  "lastName"=> null);
   echo "The original value is=";
   print_r($studentDetails);
   $result = array_filter($studentDetails);
   echo "
";      echo "After removing null part,the result is=";    print_r($result); ?>
0. Nhưng có lẽ đó chỉ là những gì bạn cần. Trong trường hợp đó, hãy xem ví dụ bên dưới

Làm cách nào để lọc dữ liệu từ mảng trong PHP?

Hàm array_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 cho 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ả về mảng kết quả. Các khóa của mảng được giữ nguyên.

Làm cách nào để xóa giá trị null trong mảng PHP?

Cách phổ biến và chính xác nhất là sử dụng hàm array_filter . Nó sẽ xóa bất kỳ phần tử nào được đánh giá là FALSE (null, false, '', 0). Bằng cách thêm chức năng gọi lại, bạn có thể tùy chỉnh bộ lọc.

Làm cách nào để xóa khoảng trống khỏi mảng trong PHP?

Hàm trim() xóa khoảng trắng và các ký tự được xác định trước khác khỏi cả hai phía của chuỗi. chức năng liên quan. ltrim() - Xóa khoảng trắng hoặc các ký tự được xác định trước khác khỏi phía bên trái của chuỗi. rtrim() - Xóa khoảng trắng hoặc các ký tự được xác định trước khác khỏi phía bên phải của chuỗi.

Làm cách nào để xóa các giá trị NaN trong PHP?

Sử dụng array_filter để loại bỏ NaN bằng hàm is_nan . $array = [1, 3, 5, 3, float(NaN), 4, float(NaN)]; . is_nan($element); . Thao tác này cũng sẽ xóa các số được lưu dưới dạng chuỗi, ví dụ '21' sẽ bị xóa.