我有一个二维数组,就像那样;
$results[$i][$j]->title;
$results[$i][$j]->snippet;
$results[$i][$j]->link;
它充满了价值。我必须将此变量及其值用于不同的页面。 我尝试使用会话,但它会出错。
我该如何解决这个问题?
感谢您的帮助。
答案 0 :(得分:3)
第一页:
session_start();
$_SESSION['fancy array'] = array("foo"=>array("b","a","r"));
第二页:
session_start();
print_r($_SESSION['fancy array']);
适合我:]
答案 1 :(得分:1)
$results
var之后的第1页上的。 (在<html>
之前)
session_start();
$_SESSION['results'] = $results;
第2页:
session_start();
$results = $_SESSION['results'];
答案 2 :(得分:1)
如果您尝试在会话中序列化对象(如前所述),请记住将自动调用成员函数__sleep和__wakeup。此外,您需要确保对象类的构造函数在后续页面上可用。 (当试图通过$ _SESSION传递对象时,这是一个非常常见的墙壁。)
http://php.net/function.serialize
另见:
http://php.net/language.oop5.serialization
您是否考虑过提取所需的对象属性并将其作为标量值存储在数组中?这可以通过$ _SESSION轻松存储,不需要额外考虑。