I am using something like this on one of my plugins:
$myOption_def = "myOption Default Value";
$myOption = get_option( 'myOption' ) ? get_option( 'myOption' ) : $myOption_def;
That works fine, but the problem is that I need to be able to set the option to “empty”, but when I do that (from a textarea on my plugin’s option page), I get the default value instead of an empty string because get_option( ‘myOption’ ) returns the same if my option value is empty than if it doesn’t exists.
So how can I figure out when my option doesn’t exist (and then set $myOption to my default value), or when my option value is empty (and then set $myOption to an empty string)?
Basically to distinguish between
false
boolean value and''
empty string you must use more strict comparison operator.But there is more. Since what you want is very typical –
get_option()
already can provide default value on its own. So your code can be simplified to:Note that this will correctly determine empty string and won’t apply default value in that case.
You could check for null like so,
Oops, figure out myself: