ฟังก์ชัน array_walk

ฟังก์ชัน array_walk ใช้ฟังก์ชันที่กำหนด กับทุกองค์ประกอบของอาร์เรย์ ส่งคืน true ในกรณีที่สำเร็จ หรือ false ในกรณีที่เกิดข้อผิดพลาด พารามิเตอร์แรกของฟังก์ชัน รับอาร์เรย์ และพารามิเตอร์ที่สองคือ callback

ใน callback จะส่งผ่านพารามิเตอร์สองตัว พารามิเตอร์แรกคือ ค่าขององค์ประกอบอาร์เรย์ และพารามิเตอร์ที่สองคือคีย์

อาร์เรย์ที่ส่งผ่านไปยังฟังก์ชันจะไม่ เปลี่ยนแปลงด้วยตัวเอง แต่สามารถทำได้ โดยการส่งองค์ประกอบ ผ่านการอ้างอิง

ไวยากรณ์

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,
    ซึ่งลดอาร์เรย์