note 115283 deleted from function.array-column by sobak

From: Date: Tue, 01 Jul 2014 17:37:34 +0000
Subject: note 115283 deleted from function.array-column by sobak
References: 1  Groups: php.notes 
Request: Send a blank email to php-notes+get-199800@lists.php.net to get a copy of this message
Note Submitter: ohcc at 163 dot com ---- Use the following function if you are using PHP 5.4 or lower. It is a complete simulation of array_column() in PHP 5.5 created by me. <?php if(!function_exists('array_columns')){ /* * array_column() for PHP 5.4 and lower versions */ function array_columns($input,$column_key,$index_key=''){ if(!is_array($input)) return; $results=array(); if($column_key===null){ if(!is_string($index_key)&&!is_int($index_key)) return false; foreach($input as $_v){ if(array_key_exists($index_key,$_v)){ $results[$_v[$index_key]]=$_v; } } if(empty($results)) $results=$input; }else if(!is_string($column_key)&&!is_int($column_key)){ return false; }else{ if(!is_string($index_key)&&!is_int($index_key)) return false; if($index_key===''){ foreach($input as $_v){ if(is_array($_v)&&array_key_exists($column_key,$_v)){ $results[]=$_v[$column_key]; } } }else{ foreach($input as $_v){ if(is_array($_v)&&array_key_exists($column_key,$_v)&&array_key_exists($index_key,$_v)){ $results[$_v[$index_key]]=$_v[$column_key]; } } } } return $results; } } $testArray=array( array(0=>'Girl','name'=>'Judy'), array(0=>'Boy','name'=>'Jerry') ); echo '<pre>'; print_r(array_columns($testArray,'name')); print_r(array_columns($testArray,0,'name')); ?>

« previous php.notes (#199800) next »