цикл foreach не печатает все значения на странице просмотра из контроллера - PullRequest
0 голосов
/ 24 февраля 2012

как распечатать все значения, используя цикл foreach.i использовал цикл, но он печатает только последние значения из значений массива.

query=$this->Common_model->getTableData('table name', array('field name' => $param))->result();


     foreach($query as $rows)
     {

     $user=$rows->userby;
     $data['user_status']=$rows->status;

      $data['user']=$user;

      $status=$this->Common_model->getTableData('table name', array('id' =>$data['user_status']))->row();

      $data['status']=$status->name;


     }

Ответы [ 2 ]

1 голос
/ 01 марта 2012

Причина, по которой вы получаете только последние значения, заключается в том, что вы присваиваете значения тому же индексу, который переопределяет предыдущее значение. ты должен попробовать это

foreach($query->result() as $rows)  // correction here.
     {

     $user=$rows->userby;
     $data['user_status'][]=$rows->status;

      $data['user'][]=$user;

      $status=$this->Common_model->getTableData('table name', array('id' =>$data['user_status']))->row();

      $data['status'][]=$status->name;


     }
1 голос
/ 24 февраля 2012

Должно было быть:

$query=$this->Common_model->getTableData('table name', array('field name' => $param));  //remove ->results()


     foreach($query->result() as $rows)  // correction here.
     {

     $user=$rows->userby;
     $data['user_status']=$rows->status;

      $data['user']=$user;

      $status=$this->Common_model->getTableData('table name', array('id' =>$data['user_status']))->row();

      $data['status']=$status->name;


     }

Функция result() вызывается каждый раз для последовательного обхода строк (последовательно).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...