2016-10-04 3 views
0

codeigniter userdata 세션에 다차원 배열을 저장하고 싶습니다. 내가 간단한 배열을 저장할 때 잘 동작합니다. 그러나 다차원에서 그것은 아무것도 저장하지 않는다. 세션에 다차원 배열을 저장하는 방법이 있습니까?userdata session codeigniter에 다차원 배열 저장

내 코드는 다음과 같습니다

   foreach ($unique_data as $unique_type) { 
       $indexes = index_unique_values($product_all_data, 'type', $unique_type['type']); 
       foreach ($indexes as $key) { 
        $product_name = $product_all_data[$key]['name']; 
        $product_type = $product_all_data[$key]['type']; 
        $product_status = $product_all_data[$key]['status']; 
        $cost = $product_all_data[$key]['cost']; 
        $price = $product_all_data[$key]['price']; 
        $barcode = $product_all_data[$key]['barcode']; 

        $product_type_all_prod[] = array('name' => $product_name, 'type' => $product_type, 'status' => $product_status, 'cost' => $cost, 'price' => $price, 'barcode' => $barcode, 'cat_name' => ''); 
       } 
      } 

      $product_bytype_array = array("product_by_type" => $product_type_all_prod); 
      $this->session->set_userdata($product_bytype_array); 

감사합니다.

답변

0

당신은

$this->session->set_userdata(['product_data' =>$product_bytype_array]); 

당신은 당신이 실제로 당신이 기대하는 형식의 배열을 생성하는 것을 확인할 수 있습니다 ... 같은 무엇을하려고하는 경우.

그런 다음 저장 결과가 예상 한 형식인지 확인하십시오.

// What's in the resulting array that we want to store in the session? 
var_dump($product_type_all_prod); 

$product_bytype_array = array("product_by_type" => $product_type_all_prod); 
$this->session->set_userdata($product_bytype_array); 

//What's in the array in the session 
var_dump($this->session->userdata('product_by_type')); 

도움이됩니다.

참고 : CI 3.1.0을 사용하여 세션을 파일 유형으로 구성한 다음 데이터베이스로 테스트 한 결과를 테스트했습니다.

+0

잘 작동하지 않습니다. – Shaban

+0

세션에 DB 또는 파일을 사용하고 있습니까? 지금까지 세션 파일을 사용해 테스트 해봤는데 ... – TimBrownlaw