如何判断选项是否已创建,而不是空选项? 时间:2012-09-19 作者:N2Mystic 测试数据库中是否存在选项的方法是什么?不是选项的值,只是选项存在。 3 个回复 最合适的回答,由SO网友:Otto 整理而成 当您尝试获取不存在的选项时,这些选项会在内存中缓存它们不存在的事实。因此,您可以检查该缓存以确定差异。$value = get_option(\'example\'); $notoptions = wp_cache_get( \'notoptions\', \'options\' ); if ( isset( $notoptions[\'example\'] ) ) { // option does not exist } else { // option exists, $value is legit } SO网友:Chip Bennett 或者,你可以通过考试NULL 默认设置为get_option(), 然后进行测试:if ( NULL === get_option( $option, NULL ) ) { // Option value is NULL; // do something } 我建议使用NULL 作为默认值,而不是false, 有些选项可能会合法地返回布尔值,但永远不会合法地返回NULL. SO网友:kaiser 这是一个很好的问题!基本上你可以做一些事情来绕过它,但最简单的是检查你的选项是否是“自动加载”选项中的数组键之一。看看add_option()s 定义:第四个参数是yes, 上面写着“将我添加到自动加载选项”。如果是这种情况,只需检查数组键,如下例所示:function wpse65658_check_autoload_option( $opt_name ) { if ( in_array( $opt_name ,array_keys( wp_load_alloptions() ) ) ) return true; return false; } 结束 文章导航