我想根据数组中的特定键显示特定值。
有一些从数据库中获取的键然后我想显示其有意义的值,如:
array('12_01'=>'12:00 - 01:00','01_02'=>'01:00 - 02:00');
这是代码:
<?php echo implode(',',$selected_hours); ?>
这里是数组:
$hourshow = array('12_01'=>'12:00 - 01:00',
'01_02'=>'01:00 - 02:00',
'02_03'=>'02:00 - 01:03',
'03_04'=>'03:00 - 04:00',
'04_05'=>'04:00 - 05:00',
'05_06'=>'05:00 - 06:00',
'06_07'=>'06:00 - 07:00',
'07_08'=>'07:00 - 08:00',
'07_09'=>'08:00 - 09:00',
'09_10'=>'09:00 - 10:00',
'10_11'=>'10:00 - 11:00',
'11_12'=>'11:00 - 12:00',
'12_13'=>'12:00 - 13:00',
'13_14'=>'13:00 - 14:00',
'14_15'=>'14:00 - 15:00',
'15_16'=>'15:00 - 16:00',
'16_17'=>'16:00 - 17:00',
'17_18'=>'17:00 - 18:00',
'18_19'=>'18:00 - 19:00',
'19_20'=>'19:00 - 20:00',
'20_21'=>'20:00 - 21:00',
'21_22'=>'21:00 - 22:00',
'22_23'=>'22:00 - 23:00',
'23_24'=>'23:00 - 24:00',
);
答案 0 :(得分:2)
$keys = array('12_01','01_02','02_03','03_04','04_05','05_06','06_07','07_08','08_09','09_10','10_11','11_12');
$result = array();
foreach($keys as $value){
$val = explode('_',$value);
$result[$value] = $val[0].':00 - '.$val[1].':00';
}
echo '<pre>';print_r($result);exit;
您可以尝试使用此代码。您将获得结果数组中的结果。
答案 1 :(得分:0)
使用ksort()
:
$hourshow = array(...);
ksort($hourshow);
// $hourshow is now sorted according to key.
答案 2 :(得分:0)
不知道我是否正确地提出了您的问题,但这应该是您正在寻找的
array_intersect_key($hourshow, array_flip($yourWantedHoursArray))
;
答案 3 :(得分:0)
@Ashish Vyas简单地按下面这样做
math.atan2(y, x)