CI 묻고 답하기

제목 안녕하세요 ciboard로 공부 중인 사람입니다.
글쓴이 trace 작성시각 2016/08/30 00:33:46
댓글 : 2 추천 : 0 스크랩 : 0 조회수 : 15397   RSS

Menu_model을 계속 공부하고 있는데 궁금증이 생겨서 글을 남깁니다. 

 

public function get_all_menu($device_view_type = '')

    {

        $cachename = $device_view_type === 'mobile'

            ? 'pagemenu-mobile' : 'pagemenu-desktop';

        $userid = $this->session->userdata('username');

        if ( ! $result = $this->cache->get($cachename)) {

 

            $where = $device_view_type === 'mobile'

                ? array('men_mobile' => 1) : array('men_desktop' => 1); 

 

            $return = $this->get('', '', $where, '', 0, 'men_order', 'asc');

                                    

 

            if ($return) {

                foreach ($return as $key => $value) {

                    $result[$value['men_parent']][$value['men_id']] = $value;

                }

                $this->cache->save($cachename, $result);

            }

        }

        return $result;

    }

 

 

위의 내용은 Menu_model의 내용중 한 function 입니다. 여기서 보기에 $where 부분을 통해 

db에서 mem_mobile이 1이거나 mem_desktop이 1인 값들을 불러 와라 라고 보여 집니다.

저는 여기에 추가하여 로그인 한 유저의 id값과 제가 menu db에 추가한 mem_id 값이 같거나 0인 메뉴만 불러 오고 싶은데,

제 생각에는 

 

 $where = $device_view_type === 'mobile'

                ? array('men_mobile' => 1) : array('men_desktop' => 1) || array('mem_id' == $userid || 0);

 

라고 작성하면 될것 같은데 안되서 무엇이문제인지 모르겠습니다. ㅠ

 다음글 javascipt의 연관 배열을 뷰페이지로 보낼려면 어... (3)
 이전글 로그인이 한번에 되질 않습니다. (4)

댓글

배강민 / 2016/08/30 08:48:28 / 추천 1

PHP 삼항연산자 사용법

PHP 연관배열 사용법

Codeigniter 엑티브레코드의 특성

위 3가지를 다시 한번 알아보셔야겠습니다.

이래저래하시라고 장문의 댓글을 쓰다가, 직접 공부하셔서 해결하시는게 낫겠다는 생각으로 다 지우고, 아이템만 알려드립니다.

trace / 2016/09/02 23:31:12 / 추천 0
@배강민 감사합니다 무엇을 공부해야 되는지 몰랐는데 덕분에 공부하고 해결하였습니다.