重写PHP代码版本5.3及以上版本与5.2版本兼容

时间:2013-08-11 18:55:50

标签: php codeigniter

我的主机使用的是旧版本的php 5.2,由于这段代码列表给出了解析错误,同时提出了如何使其与5.2兼容的建议,它在我的本地服务器上运行良好5.3

  function getRequestedTests($labref) {
        $this->db->select('name');
        $this->db->from('tests t');
        $this->db->join('request_details rd', 't.id=rd.test_id');
        $this->db->where('rd.request_id', $labref);
        $this->db->order_by('name', 'desc');
        $query = $this->db->get();
        $result = $query->result();

       //problem starts here with the array_map()

        $output = array_map(function ($object) {
                    return $object->name;
                }, $result);
        return $tests = implode(', ', $output);
    }

1 个答案:

答案 0 :(得分:2)

function my_arr_map($object) {
  return $object->name;
}

function getRequestedTests($labref) {
  $this->db->select('name');
  $this->db->from('tests t');
  $this->db->join('request_details rd', 't.id=rd.test_id');
  $this->db->where('rd.request_id', $labref);
  $this->db->order_by('name', 'desc');
  $query = $this->db->get();
  $result = $query->result();

  //problem starts here with the array_map()
  $output = array_map(array($this, 'my_arr_map'), $result);
  return $tests = implode(', ', $output);
}