foreach返回单个结果codeigniter

I want a array with owen key but when i am trying to do this it return only first result any idea?

    $query = $this->db->get('users');
    if ($query->num_rows() > 0) {
    foreach($query->result() as $row) {
        $data = array(
         'Name'-> $row->name
        );
    }
    $users = $data;

Try this:

  $data = array();
  foreach($query->result() as $row) {
        array_push($data,array(
         'Name'-> $row->name
        ));
    }
    $users = $data;

This should be like,

$data = array();
    $query = $this->db->get('users');
    if ($query->num_rows() > 0) {
    foreach($query->result() as $row) {
        $data[] = $row->name;        
    }
print_r($data);
    $users = $data;