게시판 검색함수에 대해서 궁금한점이 있습니다.

게시판 검색함수에 대해서 궁금한점이 있습니다.

QA

게시판 검색함수에 대해서 궁금한점이 있습니다.

본문

common.lib.php 파일에서

게시판 검색에 사용되는 get_sql_search() 함수가 있는데요?

 


// 검색 구문을 얻는다.
function get_sql_search($search_ca_name, $search_field, $search_text, $search_operator='and')
{
    global $g5;
    $str = "";
    if ($search_ca_name)
        $str = " ca_name = '$search_ca_name' ";
    $search_text = strip_tags(($search_text));
    $search_text = trim(stripslashes($search_text));
    if (!$search_text) {
        if ($search_ca_name) {
            return $str;
        } else {
            return '0';
        }
    }
    if ($str)
        $str .= " and ";
    // 쿼리의 속도를 높이기 위하여 ( ) 는 최소화 한다.
    $op1 = "";
    // 검색어를 구분자로 나눈다. 여기서는 공백
    $s = array();
    $s = explode(" ", $search_text);
.........................................

 

여기부분에서


    $str = "";
    if ($search_ca_name)
        $str = " ca_name = '$search_ca_name' ";
    $search_text = strip_tags(($search_text));
    $search_text = trim(stripslashes($search_text));
    if (!$search_text) {
        if ($search_ca_name) {
            return $str;
        } else {
            return '0';
        }
    }
    if ($str)
        $str .= " and ";

이부분이 엄청 이해가 안됩니다.

우선은 처음에는 값이 없는 $str 변수를 선언합니다.
그리고 카테고리(분류)가 있다면 $str 변수에 쿼리스트링 ca_name = '$search_ca_name' 을 추가합니다.
이후에 $search_text (검색어)변수에 있는 검색어를 가공합니다.


마지막으로
if (!$search_text) >>> 검색어가 없다면 실행합니다.

즉 검색어가 없는 경우는 분류를 클릭했을 경우 분류 검색을 위해서죠?
그리고나서
if ($search_ca_name) { >>>> 분류가 있다면 이전에 $str 변수에 쿼리스트링을 추가한 문자열을 리턴합니다.
    return $str;
} else { >>>> 여기에서 첫번째 질문입니다. else는 0을 리턴하는데 0을 리턴하는 의미가 무엇인가요???
    return '0';
}

 

else는 0을 리턴하는데 0을 리턴하는 의미가 무엇인가요???

이 질문에 댓글 쓰기 :

답변 1

함수에서 return 값을 0으로 리턴하는 거는

php에서 1은 true 가 되고 0은 false가 됩니다.

 

function 을 0으로 리턴을 하면 해당하는 함수의 값을 안쓰게 된다는걸 의미합니다.

 

말로 설명하려니 두서가 좀 없기는 한데 이해하셨으리라 봅니다.

 

예를 들면 

 

function abs(){

   return 0;

}

 

$a = abs();

 

이렇게 $a 라는 변수에 함수를 담으면

 

$a 는 0을 반환하니 false 가 됩니다.

 

즉 

 

if(!$a){

   echo "출력";

} else {

   echo "출력하지않음";

}

 

이런용도로 쓰실 수 있어요.

 

검색함수를 이용하는 변수쪽을 보면 이해하기 쉬우시리라 판단됩니다^^

 

도움이 되셨다면 채택 부탁드릴게요 ~

답변을 작성하시기 전에 로그인 해주세요.
전체 58
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT