Php 变量$\u POST在代码中间为空

Php 变量$\u POST在代码中间为空,php,wordpress,Php,Wordpress,我正在为WordPress构建一个带有元数据保存功能的插件。下面是代码的一部分 update_option("pdev_pre_nonce2", $_POST["pdev-book-details"]); // $_POST["pdev-book-details"] has a value here received from form submission. // Check if not Nonce field (CSRF To

我正在为WordPress构建一个带有元数据保存功能的插件。下面是代码的一部分

update_option("pdev_pre_nonce2", $_POST["pdev-book-details"]);   // $_POST["pdev-book-details"] has a value here received from form submission.
// Check if not Nonce field (CSRF Token) exists or if not verified abort.
if(
    ! isset($_POST["pdev-book-details"]) ||
    ! wp_verify_nonce($_POST["pdev-book-details"], basename(__FILE__))
) {
    update_option("pdev_post_nonce2", $_POST["pdev-book-details"]); // But here $_POST["pdev-book-details"] is null
    return;
}

查看代码中的上述注释。如何首先设置$\u POST[“pdev书籍详细信息”],然后在中途设置为空。

您是说,在您的条件下,仅当
!设置($\u POST[“pdev book details”])
,这样只有在未设置pdev book details时才会执行部分代码。

您是否通过转储
$\u POST
验证了这一点?是的,我做了。update_选项用于像dumping一样的调试,此代码完全按照此顺序调用,原始的
update_选项
和问题中可能遗漏的
if条件之间没有任何区别?条件中有| |,第二个条件为true。return语句前的行实际上不在代码中。我添加它是为了调试。