Функция array_walk

Функция array_walk берилган функцияни массивнинг барча элементларига қўллайди. Муваффақиятли тугаганида true қайтаради ёки хатолик юз белганида false қайтаради. Биринчи параметр сифатида функция массивни қабул қилади, иккинчисида эса - коллбэк.

Коллбэкга икки параметр ўтказилади. Биринчи параметр сифатида массив элементанинг қиймати, иккинчи параметр сифатида эса - калит.

Функцияга ўтказилган массив ўзи ўзгармайди. Аммо буни массив элементага ҳавоола орқали ўтказиш орқали амалга ошириш мумкин.

Синтаксис

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

Мисол

Келгила, массивни айлантириб, унинг калитлари ва элементларини чиқарайлик:

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

Кодни ишга тушириш натижаси:

php'a 1'
'b 2'
'c 3'

Мисол

Келгила, массивни айлантириб, унинг элементларини квадратга кўтарайлик:

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

Кодни ишга тушириш натижаси:

php['a' => 1, 'b' => 4, 'c' => 9]

Шунингдек қаранг

  • array_map функциясини,
    массив элементларига функция қўллаганда
  • array_filter функциясини,
    массивни филтрлаганда
  • array_walk_recursive функциясини,
    массив элементларига функцияни рекурсив чақирганда
  • array_reduce функциясини,
    массивни қисқартганда