2014-01-02 2 views
-1

Мой контроллер:Как создать собственный объект массива в codeigniter?

protected function fillsess($sessdata){ 
    foreach($sessdata as $row){ 
    $d[] = $row->name; 
    } 
    $this->session->setuserdata('savesess',$d); 
} 

public function show(){ 
    $data['names'] = $this->info->names(); 
    $this->fillsess($data['names']); 
    $this->load->view('myview',$data); 
} 

Как я могу создать эту структуру массива в защищенной функции fillsess()

Array ([0] => stdClass Object ([name] => name1) [1] => stdClass Object ([name]  => name2)) 
+0

эта функция является частью моего класса контроллера, есть ли стиль, чтобы изменить его без использования моделей в CodeIgniter –

+0

вы хотите хранить объекты в сессию? –

ответ

0
protected function fillsess($sessdata) { 
    $arr = array(); 

    foreach($sessdata as $row) { 
     $arr = (object) array(
      'name' => $row->name 
     ); 
    } 

    $this->session->setuserdata('savesess', $arr); 
} 
0

Вот функция, которую можно использовать для форматирования array в object. Это не 100%, но его начало, надеюсь, это поможет.

function arrayToObject($array = '') 
{ 
    //check if given data is an array 
    if (is_array($array)) 
    { 
     //if array return object 
     return (object) array_map(__FUNCTION__, $array); 
    }else{ 
     // Return normal 
     return $d; 
    } 
} 
Смежные вопросы