分享 php array_column 函数 无法在低版本支持的 修改
1 function i_array_column($input, $columnKey, $indexKey=null){ 2 if(!function_exists('array_column')){ 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 }else{ 27 return array_column($input, $columnKey, $indexKey); 28 } 29 }
男儿立志出乡关 学不成名誓不还