你是要这样的
print_r(array_map(null, explode('{td}', $exam[19]), explode('{td}', $exam[20])));
Array
(
    [0] => Array
        (
            [0] => 编号
            [1] => 1
        )    [1] => Array
        (
            [0] => 课程
            [1] => 流体力学
        )    [2] => Array
        (
            [0] => 日期
            [1] => 2014-11-0600:00:00.0
        )    [3] => Array
        (
            [0] => 时间
            [1] => 14:00-16:00
        )    [4] => Array
        (
            [0] => 班级
            [1] => 土木122
        )    [5] => Array
        (
            [0] => 考场
            [1] => Ⅲ-209
        )    [6] => Array
        (
            [0] => 任课教师
            [1] => 巩妮娜
        )    [7] => Array
        (
            [0] => 
            [1] => 
        ))
还是这样的
print_r(array_combine(explode('{td}', $exam[19]), explode('{td}', $exam[20])));Array
(
    [编号] => 1
    [课程] => 流体力学
    [日期] => 2014-11-0600:00:00.0
    [时间] => 14:00-16:00
    [班级] => 土木122
    [考场] => Ⅲ-209
    [任课教师] => 巩妮娜
    [] => 
)

解决方案 »

  1.   

    $s = '2014-11-0600:00:00.0';
    echo date('Y-m-d', strtotime($s));
    echo substr($s, 0, 10);
    两种方法都可以
      

  2.   

    zumning版主,数组最后一行怎么会有一个空的元素呢?用array_pop函数处理也没有办法删除啊?
      

  3.   

    最后的空元素是这样产生的
        [19] => 编号{td}课程{td}日期{td}时间{td}班级{td}考场{td}任课教师{td}
        [20] => 1{td}流体力学{td}2014-11-0600:00:00.0{td}14:00-16:00{td}土木122{td}Ⅲ-209{td}巩妮娜{td}
    你可以对结果数组做 array_pop
    也可以处理前删除掉
    $exam[19] = substr($exam[19], 0, -4);
    $exam[20] = substr($exam[20], 0, -4);