Trong phiên bản PHP 5.3, các phương thức của các đối tượng trong mảng có thể được gọi bằng đoạn mã dưới đây -
$props = array_map(function($obj){ return $obj->getProp(); }, $objs);
Điều này sẽ chậm hơn vòng lặp ‘for’ vì nó gọi một hàm cho mọi phần tử -
function map($obj) { return $obj->getProperty(); } $props = array_map('map', $objs);
Ngoài ra, đối với các phiên bản PHP trước 5.3, có thể sử dụng mã dưới đây -
function map($obj) { return $obj-> getProperty (); } $props = array_map('map', $objs); }
Hàm getProperty sẽ được gọi trên tất cả các đối tượng và thuộc tính cụ thể được hiển thị. Thay thế -
function encode_data($val){ if(is_array($val)){ return $val = array_map('encode_data', $val); } else { return utf8_encode($val); } } $value = array_map('encode_data', $value); print_r($value);
Dữ liệu được mã hóa utf8 của giá trị sẽ được hiển thị.