如何在插件开发中使用wordpress中的会话

Vai*_*ool 23 php wordpress wordpress-plugin

我是新来写一个插件..我有一个testplugin.php文件和一个ajax.php文件..

我在testplugin.php中的代码是

global $session;

print_r($abc); //$abc is array of my data ..

$session['arrayImg']=$abc; //saving data in session 

echo  $session['arrayImg']; //displayin "Array"
Run Code Online (Sandbox Code Playgroud)

我的ajax.php包含以下代码

global $session;

$abc = $session['arrayImg'];

print_r ("abs== ".$abc); //displayin "abs== Array"
Run Code Online (Sandbox Code Playgroud)

如果使用 session_start();

我得到以下错误

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent 
Run Code Online (Sandbox Code Playgroud)

我只想将我的插件的一个文件中的数据数组发送到另一个文件...

Sha*_*zad 46

//在你的插件或主题functions.php上

function register_session(){
    if( !session_id() )
        session_start();
}
add_action('init','register_session');
Run Code Online (Sandbox Code Playgroud)

//设置SESSION数据 -

$_SESSION['arrayImg'] = $abc;
Run Code Online (Sandbox Code Playgroud)

//获取ajax挂钩函数的数据 -

function resolve_the_ajax_request(){
    if( !session_id())
        session_start();

    $abc = $_SESSION['arrayImg'];
}
Run Code Online (Sandbox Code Playgroud)

  • 让我们聚会:) @jcwenger (2认同)