如何访问php数组中特定键的特定值

时间:2017-03-20 12:34:28

标签: php arrays codeigniter

我想根据数组中的特定键显示特定值。

有一些从数据库中获取的键然后我想显示其有意义的值,如:

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',
         );

4 个答案:

答案 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)