我正在尝试获取现有的对象数组,然后对其进行json\\U编码,并将其添加到$\\U会话[“”],以便我可以在我网站的其他页面上请求它。有没有办法保存我的会话字符串(或数组)并将其显示在另一个页面上?
下面是我试图添加到会话中的数组的代码。(我不知道是否需要对其进行编码,但我认为这可能会提高性能?)
$postArray = array(
"CompanyID" => "5",
"FirstName" => $_POST[\'first_name\'],
"LastName" => $_POST[\'last_name\'],
"Email" => $_POST[\'email\'],
"Company" => $_POST[\'company\'],
"Phone" => $_POST[\'phone\'],
"Fax" => $_POST[\'fax\'],
"AdressLine1" => $_POST[\'address\'],
"AdressLine2" => "",
"City" => $_POST[\'city\'],
"DistrictID" => $_POST[\'state\'],
"CountryID" => $_POST[\'country\'],
"PostCode" => $_POST[\'postcode\'],
"SpecialInstructions" => $_POST[\'special\'],
"Items" =>
$item_array
,
"Source" => "Web submission"
);
$json = json_encode($postArray);
然后,在这段代码之后,我尝试将一个操作初始化为wp以启动并添加到会话中
add_action(\'wp\', \'start_my_session\');
function start_my_session() {
session_start();
$_SESSION[\'order_details\'] = $GLOBALS[\'json\'];
}
之后,我尝试使用此代码在新页面上调用它
<?php
add_action(\'wp_footer\', \'show_session_var\');
function show_session_var() {
if(isset($_SESSION[\'order_details\'])) echo $_SESSION[\'order_details\'];
}
?>
当我尝试检索数据时,我遇到以下错误:session\\u start():
无法在标头已发送时启动会话,但我需要创建会话,因为wordpress不会自动创建会话?有什么想法吗?我是Wordpress中php开发的新手。