php5.5新函數array_column

來源:互聯網
上載者:User

標籤:

php5.5新增了一個新的數組函數,感覺挺使用的,低版本的實現按照如下實現

 1 if(!function_exists(‘array_column‘)){ 2     function array_column($input, $columnKey, $indexKey=null){ 3         $columnKeyIsNumber      = (is_numeric($columnKey)) ? true : false; 4         $indexKeyIsNull         = (is_null($indexKey)) ? true : false; 5         $indexKeyIsNumber       = (is_numeric($indexKey)) ? true : false; 6         $result                 = array(); 7         foreach((array)$input as $key=>$row){ 8             if($columnKeyIsNumber){ 9                 $tmp            = array_slice($row, $columnKey, 1);10                 $tmp            = (is_array($tmp) && !empty($tmp)) ? current($tmp) : null;11             }else{12                 $tmp            = isset($row[$columnKey]) ? $row[$columnKey] : null;13             }14             if(!$indexKeyIsNull){15                 if($indexKeyIsNumber){16                     $key        = array_slice($row, $indexKey, 1);17                     $key        = (is_array($key) && !empty($key)) ? current($key) : null;18                     $key        = is_null($key) ? 0 : $key;19                 }else{20                     $key        = isset($row[$indexKey]) ? $row[$indexKey] : 0;21                 }22             }23             $result[$key]       = $tmp;24         }25         return $result;26     }27 }

 

php5.5新函數array_column

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.