我如何使用一个函数变量到另一个函数在php或WordPress


How can I use the one function variable to another function in php or the WordPress?

我已经从存储在my_ajax_req中的$passValue中的ajax请求中检索了一个值。现在我试图在另一个函数wpsln_log_wp_user_login中使用变量的值。我为此编写了以下代码。但这是徒劳的。我已经研究过如何才能做到这一点。这是唯一的办法,但行不通。请帮助我为什么$passValuewpsln_log_wp_user_login中不工作。

function my_ajax_req() {
    global $passValue;
    $passValue = $_POST['passVal'];
    die();
}
add_action('wp_ajax_my_req', 'my_ajax_req' );
add_action('wp_ajax_nopriv_my_req', 'my_ajax_req' );
function wpsln_log_wp_user_login( $user_user_login, $user ) {
  global $passValue;
  echo $passValue;
}
add_action( 'wp_login', 'wpsln_log_wp_user_login', '60', 2 );

如果全局作用域不起作用,则使用Sessions。正如我在评论中告诉你的我使用die('Call');来检查它是否回显会话变量保存的数据。

function my_ajax_req()
{
    session_start();
    $passValue = $_POST['passVal'];
    $_SESSION['passValue'] = $passValue;
    die();
}
add_action('wp_ajax_my_req', 'my_ajax_req');
add_action('wp_ajax_nopriv_my_req', 'my_ajax_req');
function wpsln_log_wp_user_login($user_user_login, $user)
{
    $passValue = $_SESSION['passValue'];
    echo $passValue;
    die('Call'); // Remove die when it works 
    // do your further code here if require.
}
add_action('wp_login', 'wpsln_log_wp_user_login', '60', 2);