How to tell if $query_var isset?

I tired to use isset($queryvar) but that didnt work, so I implemented my own function qv_isset, but it runs into a problem when $ch is set to 0.

$cls = get_query_var('cls');
$ch = get_query_var('ch');

function qv_isset($var) {
    if($var == '') { return false; 
    } else { return true; }
}

if(qv_isset($cls) && qv_isset($ch)) {
    mcs_textbook_chapter($dialect, $cls, $ch);
} elseif(qv_isset($cls)) {              
    mcs_textbook_chapter($dialect, $cls);
} else {
    mcs_textbook($dialect);
}

4 Answers
4

use the indentical comparison operator:

if(get_query_var('cls') !== '' && get_query_var('ch') !== '') {
    mcs_textbook_chapter($dialect, $cls, $ch);
} elseif(get_query_var('cls') !== '') {              
    mcs_textbook_chapter($dialect, $cls);
} else {
    mcs_textbook($dialect);
}

Leave a Comment