php会话技术之Session用法举例。
本文原始链接:http://www.jbxue.com/article/8940.html
1、创建session
<?php
//创建session
//初始化session
session_start();
//保存数据
$_SESSION['name']="pawm";
//session 文件中可以保存dobule,integer,string,bool, array,object
//保存bool integer
$_SESSION['age']=20;
$_SESSION['isBoy']=true;
$_SESSION['arr']=array("北京","张三","xiaoming");
//保存对象到session 中
class Dog{
private $name;
private $age;
private $intro;
public function __construct($name,$age,$intro){
$this->name=$name;
$this->age=$age;
$this->intro=$intro;
}
}
$dog1=new Dog("狗狗",5,"很听话的狗");
$_SESSION['dog1']=$dog1;
echo "保存成功";
?>
//创建session
//初始化session
session_start();
//保存数据
$_SESSION['name']="pawm";
//session 文件中可以保存dobule,integer,string,bool, array,object
//保存bool integer
$_SESSION['age']=20;
$_SESSION['isBoy']=true;
$_SESSION['arr']=array("北京","张三","xiaoming");
//保存对象到session 中
class Dog{
private $name;
private $age;
private $intro;
public function __construct($name,$age,$intro){
$this->name=$name;
$this->age=$age;
$this->intro=$intro;
}
}
$dog1=new Dog("狗狗",5,"很听话的狗");
$_SESSION['dog1']=$dog1;
echo "保存成功";
?>
要点:
1、保存的数据格式:name|s:4:"pawm";age|i:20;isBoy|b:1;
name:就是key
s:表示数据类型
4:表示数据大小
2、session 中可以保存的数据类型是:dobule,integer,string,bool, array,object
2、取出session
<?php
//取出session
//www.jbxue.com
require_once "Dog.class.php";
echo "<pre>";
//使用到session的地方必须要初始化session
session_start();
//取出全部
print_r($_SESSION);
echo "</pre>";
//单个取出
//$name=$_SESSION['name'];
if(!empty($_SESSION['name'])){
echo "名字是:".$_SESSION['name'];
}else{
echo 'name没有了<br>';
}
if(!empty($_SESSION['age'])){
echo "年龄是:".$_SESSION['age']."<br>";;
}else{
echo 'age没有了<br>';
}
//echo $_SESSION['isBoy']; //输出1
if(!empty($_SESSION['arr'])){
$arr=$_SESSION['arr'];
foreach($arr as $key=>$val){
echo "$val";
}
}else{
echo 'arr没有了<br>';
}
echo "<br>";
//取出对象的实例的时候要把类的信息引入进来,不然出现错误
if(!empty($_SESSION['dog1'])){
$dog=$_SESSION['dog1'];
//var_dump($dog);
echo "<br>".$dog->show();
//echo $dog->name;
//echo '名字是'.$name."年龄是".$age;
}else{
echo 'dog没有了<br>';
}
?>
//取出session
//www.jbxue.com
require_once "Dog.class.php";
echo "<pre>";
//使用到session的地方必须要初始化session
session_start();
//取出全部
print_r($_SESSION);
echo "</pre>";
//单个取出
//$name=$_SESSION['name'];
if(!empty($_SESSION['name'])){
echo "名字是:".$_SESSION['name'];
}else{
echo 'name没有了<br>';
}
if(!empty($_SESSION['age'])){
echo "年龄是:".$_SESSION['age']."<br>";;
}else{
echo 'age没有了<br>';
}
//echo $_SESSION['isBoy']; //输出1
if(!empty($_SESSION['arr'])){
$arr=$_SESSION['arr'];
foreach($arr as $key=>$val){
echo "$val";
}
}else{
echo 'arr没有了<br>';
}
echo "<br>";
//取出对象的实例的时候要把类的信息引入进来,不然出现错误
if(!empty($_SESSION['dog1'])){
$dog=$_SESSION['dog1'];
//var_dump($dog);
echo "<br>".$dog->show();
//echo $dog->name;
//echo '名字是'.$name."年龄是".$age;
}else{
echo 'dog没有了<br>';
}
?>
3、更新session
<?php
//更新session
session_start();
//更新name
$_SESSION['name']="小明";
echo "更新成功";
?>
session_start();
//更新name
$_SESSION['name']="小明";
echo "更新成功";
?>
4、删除session
<?php
//删除session
session_start();
//单个删除,删除name
//unset($_SESSION['name']);
//删除全部
session_destroy();
echo "删除session成功";
?>
session_start();
//单个删除,删除name
//unset($_SESSION['name']);
//删除全部
session_destroy();
echo "删除session成功";
?>