Heim >php教程 >php手册 >让array_column()函数兼容低版本PHP

让array_column()函数兼容低版本PHP

WBOY
WBOYOriginal
2016-06-07 11:43:511619Durchsuche

array_column 用于获取二维数组中的元素(PHP 5.5新增函数),但我们有时候需要在低版本的PHP环境中使用,只要做一个小的改造即可...
自定义一个函数i_array_column(),写到TP的Common中~~function i_array_column($input, $columnKey, $indexKey=null){<br>     if(!function_exists('array_column')){ <br>         $columnKeyIsNumber  = (is_numeric($columnKey))?true:false; <br>         $indexKeyIsNull            = (is_null($indexKey))?true :false; <br>         $indexKeyIsNumber     = (is_numeric($indexKey))?true:false; <br>         $result                         = array(); <br>         foreach((array)$input as $key=>$row){ <br>             if($columnKeyIsNumber){ <br>                 $tmp= array_slice($row, $columnKey, 1); <br>                 $tmp= (is_array($tmp) && !empty($tmp))?current($tmp):null; <br>             }else{ <br>                 $tmp= isset($row[$columnKey])?$row[$columnKey]:null; <br>             } <br>             if(!$indexKeyIsNull){ <br>                 if($indexKeyIsNumber){ <br>                   $key = array_slice($row, $indexKey, 1); <br>                   $key = (is_array($key) && !empty($key))?current($key):null; <br>                   $key = is_null($key)?0:$key; <br>                 }else{ <br>                   $key = isset($row[$indexKey])?$row[$indexKey]:0; <br>                 } <br>             } <br>             $result[$key] = $tmp; <br>         } <br>         return $result; <br>     }else{<br>         return array_column($input, $columnKey, $indexKey);<br>     }<br> }在需要用到array_column()函数的地方,只要调用i_array_column()即可,在低版本的PHP环境中,同样可以享受array_column()带来的便捷与快感~~

AD:真正免费,域名+虚机+企业邮箱=0元

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn