Функсияи 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,
    ки массивро фурӯ мепошад