how select one cell array by id key please ?7
array is countries.. every point is different, Identification numbers are random not to follow
my array is
$countries = array(
array(
'id' => 4,
'ar' => 'أفغانستان',
'ro' => 'Afganistan',
'ru' => 'Афганистан',
'zh' => '阿富汗',
'zh-tw' => '阿富汗',
'alpha2' => 'af',
'alpha3' => 'afg'
),
array(
'id' => 8,
'ar' => 'ألبانيا',
'bg' => 'Албания',
'pt' => 'Albânia',
'ro' => 'Albania',
'alpha2' => 'al',
'alpha3' => 'alb'
),..............
CodePudding user response:
you can simply use this function
function getById($arrays, $id){
foreach($arrays as $array){
if ($array['id'] == $id)
return $array;
}
return null;
}
usage sample
echo implode(' - ', getById($countries, 8));
results: 8 - ألبانيا - Албания - Albânia - Albania - al - alb
better way is use ids as keys of your array, so your array should be like this:
$countries = array(
4 => array(
'ar' => 'أفغانستان',
'ro' => 'Afganistan',
'ru' => 'Афганистан',
'zh' => '阿富汗',
'zh-tw' => '阿富汗',
'alpha2' => 'af',
'alpha3' => 'afg'
),
8 => array(
'ar' => 'ألبانيا',
'bg' => 'Албания',
'pt' => 'Albânia',
'ro' => 'Albania',
'alpha2' => 'al',
'alpha3' => 'alb'
));
an example of access:
echo $countries[8]['ar'];
