Hàm array_walk trong PHP là gì ?

05/08/2022 - lượt xem
Chia sẻ
 
Rate this post

Hàm array_walk() trong PHP có nhiệm vụ áp dụng một hàm callback cho mọi phần tử của mảng.

Hàm này được sử dụng trên PHP4, PHP5 và PHP7.

Cú pháp

Cú pháp hàm array_walk() trong PHP như sau:

array_walk ( array &$array , callable $callback [, mixed $userdata = NULL ] ) : bool

Tham số truyền vào 

  • $array là mảng được truyền vào.
  • $callback là hàm callback được gọi tới.
  • $userdata là tham số thứ 3 được truyền vào callback

Giá trị trả về

Hàm array_walk() sẽ trả về TRUE.

Ví dụ minh họa với hàm callback 2 tham số

<?php
$fruits = array("d" => "lemon", "a" => "orange", "b" => "banana", "c" => "apple");

function test_print($item2, $key)
{
    echo "$key. $item2<br />\n";
}

echo "Before ...:\n";
array_walk($fruits, 'test_print');
?>

Và kết quả trả về sẽ là

Before ...: d. lemon a. orange b. banana c. apple

Ví dụ 2 khi sử dụng array_walk callback 3 tham số

<?php
$fruits = array("d" => "lemon", "a" => "orange", "b" => "banana", "c" => "apple");

function test_alter(&$item1, $key, $prefix)
{
    $item1 = "$prefix: $item1";
}


array_walk($fruits, 'test_alter', 'fruit');
echo "... and after:\n";

?>
... and after: d. fruit: lemon a. fruit: orange b. fruit: banana c. fruit: apple

Ứng dụng

Bạn có thể sử dụng cách sau, để mô phỏng lại hàm array_walk khi có 3 tham số.

<?php
function array_sort($arr){
    if(empty($arr)) return $arr;
    foreach($arr as $k => $a){
        if(!is_array($a)){
            arsort($arr); // could be any kind of sort
            return $arr;
        }else{
            $arr[$k] = array_sort($a);
        }
// We can make that with this simple FOREACH loop :

$fruits = array("d" => "lemon", "a" => "orange", "b" => "banana", "c" => "apple");

foreach($fruits as $cls => $vls)
{
  $fruits[$cls] = "fruit: ".$vls;
}

Results:

Array
(
    [d] => fruit: lemon
    [a] => fruit: orange
    [b] => fruit: banana
    [c] => fruit: apple
)

Các hàm liên quan

  • Hàm array_walk_recursive()
  • Hàm iterator_apply().
  • Hàm list() .
  • Hàm each() 
  • Hàm call_user_func_array()
  • Hàm array_map()

Hi vọng với bài viết này, bạn đã hiểu rõ cách sử dụng hàm array_walk() trong PHP. Nếu thấy bài viết hay và ý nghĩa, hãy like và chia sẻ với bạn bè để mọi người cùng nhau học tập nhé.

Cảm ơn bạn đã ghé thăm codetutam.com

    Liên hệ với chúng tôi

    Để lại thông tin để nhận được các bài viết khác

    Rate this post

    Xem thêm nhiều bài tin mới nhất về Kiến thức

    Xem thêm

      Vũ Thức

      Bình luận: