Kazi array_walk_recursive

Kazi array_walk_recursive hutumia kazi maalum kwa vipengele vyote vya safu ya pande mbalimbali. Hurudisha true ikiwa imefanikiwa au false ikiwa kuna hitilafu Kigezo cha kwanza cha kazi hukubali safu, na cha pili - callback.

Kwa callback hupelekwa viambishi viwili. Kama kigezo cha kwanza huenda thamani ya kipengele cha safu, na kama cha pili - ufunguo.

Safu iliyopitishwa kwenye kazi yenyewe haibadilika. Lakini hii inaweza kufikiwa kwa kupitisha kipengele kwa kumbukumbu.

Syntax

phparray_walk_recursive(array|object &$array, callable $callback, mixed $arg = null): bool

Mfano

Wacha tusakume safu ya pande mbalimbali na tuonyeshe funguo na vipengele vyake:

php<?php
  $arr = [
    'a' => 1,
    'b' => 2,
    'c' => [
      'd' => 3,
      'e' => 4,
    ],
  ];
  
  array_walk_recursive($arr, function($elem, $key) {
    echo $key . ' ' . $elem . '<br>';
  });
?>

Matokeo ya utekelezaji wa kodi:

php'a 1'
'b 2'
'd 3'
'e 4'

Mfano

Wacha tusakume safu na tuinue vipengele vyake kwa mraba:

php<?php
  $arr = [
    'a' => 1,
    'b' => 2,
    'c' => [
      'd' => 3,
      'e' => 4,
    ],
  ];
  
  array_walk_recursive($arr, function(&$elem, $key) {
    $elem = $elem ** 2;
  });
  
  var_dump($arr);
?>

Matokeo ya utekelezaji wa kodi:

php[
  'a' => 1,
  'b' => 4,
  'c' => [
    'd' => 9,
    'e' => 16,
  ],
];

Angalia pia