$u = class test; $_SESSION['u']=$u;====================== 另一页面里,可以直接用 $_SESSION['u']->getid();但要注意的是,定义test类的程序段,必须在使用的页面里被引入进来.否则会报找不到类定义的错误.
User.phpclass User{ //初始化成员 private $id; private $name; private $pass; private $nickname; private $headimg; private $qq; private $email; private $signature;//个人签名 private $points; private $createDate; //成员封装 public function getId(){ return $this->id; } public function setId($v){ $this->id=$v; } public function getName(){ return $this->name; } public function setName($v){ $this->name=$v; } public function getPass(){ return $this->pass; } public function setPass($v){ $this->pass=$v; } public function getNickname(){ return $this->nickname; } public function setNickname($v){ $this->nickname=$v; } public function getHeadimg(){ return $this->headimg; } public function setHeadimg($v){ $this->headimg=$v; } public function getQQ(){ return $this->qq; } public function setQQ($v){ $this->qq=$v; } public function getEmail(){ return $this->email; } public function setEmail($v){ $this->email=$v; } public function getSignature(){ return $this->signature; } public function setSignature($v){ $this->signature=$v; } public function getPoints(){ return $this->signature; } public function setPoints($v){ $this->signature=$v; } public function getCreateDate(){ return $this->createDate; } public function setCreateDate($v){ $this->createDate=$v; } }function.php include_once("User.php"); //获取用户信息资料 $user=new User(); $user->setName($rs["Name"]); $user->setPass($rs["Pass"]); $user->setNickname($rs["Nickname"]); $user->setHeadimg($rs["Headimg"]); $user->setQQ($rs["QQ"]); $user->setEmail($rs["Email"]); $user->setSignature($rs["Signature"]); $user->setPoints($rs["Points"]); $user->setCreateDate($rs["CreateDate"]); //资料添加至session对象 $_SESSION["USERINFO"]=$user;index.php include_once("function.php"); include_once("User.php"); 我想在index.php 取得 $_SESSION["USERINFO"] 中getName() 方法返回的值
你用$_SESSION['user']跟用$u是一样的.相当于是clone了一个对象.
但注意不是引用,也无法引用.两者在不同的内存空间.
User 这个对象里有一个 getId()的方法,用于返回一个ID.
如果通再现在的$_SESSION['user'] 来调用getId()这个方法,从而得到ID值呢?
其实User 就是一个实体类.里面封装了一个用户的信息.如何通过现在的$_SESSION['user'] 来调用getId()这个方法,从而得到ID值呢?
session_start();
$u = $_SESSION['user'];
echo $u->getId();
?>
$_SESSION['u']=$u;======================
另一页面里,可以直接用
$_SESSION['u']->getid();但要注意的是,定义test类的程序段,必须在使用的页面里被引入进来.否则会报找不到类定义的错误.
private $id;
private $name;
private $pass;
private $nickname;
private $headimg;
private $qq;
private $email;
private $signature;//个人签名
private $points;
private $createDate;
//成员封装 public function getId(){
return $this->id;
}
public function setId($v){
$this->id=$v;
} public function getName(){
return $this->name;
}
public function setName($v){
$this->name=$v;
} public function getPass(){
return $this->pass;
}
public function setPass($v){
$this->pass=$v;
} public function getNickname(){
return $this->nickname;
}
public function setNickname($v){
$this->nickname=$v;
}
public function getHeadimg(){
return $this->headimg;
}
public function setHeadimg($v){
$this->headimg=$v;
} public function getQQ(){
return $this->qq;
}
public function setQQ($v){
$this->qq=$v;
} public function getEmail(){
return $this->email;
}
public function setEmail($v){
$this->email=$v;
} public function getSignature(){
return $this->signature;
}
public function setSignature($v){
$this->signature=$v;
} public function getPoints(){
return $this->signature;
}
public function setPoints($v){
$this->signature=$v;
}
public function getCreateDate(){
return $this->createDate;
}
public function setCreateDate($v){
$this->createDate=$v;
}
}function.php
include_once("User.php");
//获取用户信息资料
$user=new User();
$user->setName($rs["Name"]);
$user->setPass($rs["Pass"]);
$user->setNickname($rs["Nickname"]);
$user->setHeadimg($rs["Headimg"]);
$user->setQQ($rs["QQ"]);
$user->setEmail($rs["Email"]);
$user->setSignature($rs["Signature"]);
$user->setPoints($rs["Points"]);
$user->setCreateDate($rs["CreateDate"]); //资料添加至session对象
$_SESSION["USERINFO"]=$user;index.php
include_once("function.php");
include_once("User.php");
我想在index.php 取得 $_SESSION["USERINFO"] 中getName() 方法返回的值
$user->getName()不就行了
在别的页面也要用SESSION撒.
也就是说你要在session_start();之前把你的User类include好