'PHP making difference between get with and without value

Good day,

I would like to know if there is any function for making the difference between this:

?param=

and this:

?param

Because I would like my script to detect if value is empty (first example), or if it's not given (second example).

I made a test with the following functions but I could not find what I want:

if( isset( $_GET['param'] ) ) {
    echo '<div>isset</div>';
    
    if( empty( $_GET['param'] ) ) {
        echo '<div>empty</div>';
    } else {
        echo '<div>not empty</div>';
    }
    
    if( is_null( $_GET['param'] ) ) {
        echo '<div>null</div>';
    } else {
        echo '<div>not null</div>';
    }
    
    if( defined( $_GET['param'] ) ) {
        echo '<div>defined</div>';
    } else {
        echo '<div>undefined</div>';
    }
} else {
    echo '<div>not set</div>';
}

Any idea? Thank you in advance.

EDIT

Solution:

( strpos( '?'.$_SERVER['QUERY_STRING'], '?get=' ) !== false ) || ( strpos( '?'.$_SERVER['QUERY_STRING'], '&get=' ) !== false )


Solution 1:[1]

You can test with something like if( $_GET['param'] ) which will give true if Param is declared (even if it is an empty string) and false if not declared.

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1