使用 array_map 在陣列中呼叫物件的方法?


在 PHP 5.3 版本中,可以使用以下程式碼呼叫陣列中物件的函式 -

$props = array_map(function($obj){ return $obj->getProp(); }, $objs);

這樣做比“for”迴圈要慢,因為它呼叫每個元素的一個函式 -

function map($obj) {
   return $obj->getProperty();
}
$props = array_map('map', $objs);

或者,對於 5.3 之前的 PHP 版本,可以使用以下程式碼 -

function map($obj) {
   return $obj-> getProperty ();
}
$props = array_map('map', $objs);
}

getProperty 方法將呼叫所有物件,並顯示特定屬性。其他 -

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);

將顯示值的 utf8 編碼資料。

更新於:2020 年 4 月 7 日

1000+ 瀏覽

啟動您的 事業

完成課程獲得認證

開始吧
廣告
© . All rights reserved.