$is_mobile() 과 is_mobile() 의 차이?
본문
이건 이미 php로 세팅되어 있는거 같은데...
그누보드, 영카트 둘다 포함된 궁금증(?) 입니다...
반응형으로 제작시 저는 config.php 에서
//==============================================================================
// 사용기기 설정
// pc 설정 시 모바일 기기에서도 PC화면 보여짐
// mobile 설정 시 PC에서도 모바일화면 보여짐
// both 설정 시 접속 기기에 따른 화면 보여짐
//------------------------------------------------------------------------------
define('G5_SET_DEVICE', 'both');
define('G5_USE_MOBILE', false); // 모바일 홈페이지를 사용하지 않을 경우 false 로 설정
define('G5_USE_CACHE', true); // 최신글등에 cache 기능 사용 여부
이 부분을 저렇게 해서 사용을 하는 편인데
G5_USE_MOBILE 을 false 로 적용시
pc인지 모바일인지를 인식하는(?) 아래 구문이 적용되지 않습니다...
<?php echo $is_mobile() ? '모바일' : 'PC'; ?>
// 이때는 모바일로 접속해서 확인해도 pc로 출력이 됩니다.
그런데 is_mobile() 은 적용이 됩니다...
// is_mobile() 사용시 구분을 합니다...
// pc 일땐 PC, 모바일로 접속시 모바일로 출력이 됩니다.
<?php echo is_mobile() ? '모바일' : 'PC'; ?>
2개의 차이를 설명해주시면 감사하겠습니다....
!-->!-->!-->
답변 3
<?php echo $is_mobile ? '모바일' : 'PC'; ?>
<?php echo is_mobile() ? '모바일' : 'PC'; ?>
이렇게 사용하는게 바른 표현입니다.
$is_mobile은 이미 모바일인지 검색된 내용을 변수로 넣어둔 것입니다.
is_mobile()는 함수로 해당줄에 왔을 때 모바일인지를 함수를 통해 검사를 하는것입니다.
<?php echo $is_mobile() ? '모바일' : 'PC'; ?> 이건잘못된겁니다.
<?php echo is_mobile()? '모바일' : 'PC'; ?> 이렇게 사용하셔야 맞습니다.
삼항연산 방법으로 조건문입니다.
http://chobbang.tistory.com/90
$는 매개변수를 선언할때 사용하는 문법(기호)입니다.
is_mobile()같은경우 is_mobile이란 함수를 실행시키란 조건으로 알고 있습니다
$뒤에 변수명이 아니라 함수를 실행시켰는데 php에는 이런 문법이 없는걸로 알고 있습니다.
<?php $abc = is_mobile();?>
<?php echo $abc() ? '모바일' : 'PC'; ?>
으로 하셔야 아래와 같은결과가 나타나겠죠