我无法弄清楚为什么我的 PHP 会话数组在页面加载之间消失了。以下代码使 session_start() 在每次页面加载时都可用:
<?php
session_start();
if ( isset( $_SERVER['QUERY_STRING'] ) && !empty($_SERVER['QUERY_STRING']) ) {
$gmeta_query_string = $_SERVER['QUERY_STRING'];
parse_str( $gmeta_query_string, $gmeta_query_array );
var_dump($gmeta_query_array);
foreach ( $gmeta_query_array as $key => $value ) {
$_SESSION[ 'gmeta_query_array' ][$key] = $value;
}
}
var_dump( $_SESSION );
echo session_id();
?>
想也许它可能是我的服务器,这里有一些测试 URL。第一个链接创建一个会话数组并将其打印出来,第二个链接打印一个空的会话数组。两个页面上的代码相同。
http://barbadospropertylist.com/wp-content/plugins/gravitymeta/test.php?name=value
http://barbadospropertylist.com/wp-content/plugins/gravitymeta/test.php
这是 PHP 信息的链接:http ://www.barbadospropertylist.com/phpinfo.php