一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

教你如何使用php session

php session用法其實很簡單它可以把用戶提交的數據以全局變量形式保存在一個session中并且會生成一個唯一的session_id,這樣就是為了多了不會產生混亂了,并且session中同一瀏覽器同一站點只能有一個session_id,下面我們一起來看看關于session使用方法。
如何使用session,凡是與session有關的,之前必須調用函數session_start();
為session賦值很簡單,如:
復制代碼 代碼如下:
<?php
Session_start();
$Name = "這是一個Session例子";
Session_Register("Name");//注意,不要寫成:Session_Register("$Name");
Echo $_SESSION["Name"];
//之后$_SESSION["Name"]為"這是一個Session例子"
?>

php4.2之后,可以為session直接賦值:
復制代碼 代碼如下:
<?php
Session_Start();
$_SESSION["name"]="value";
?>

取消session可以這樣:
復制代碼 代碼如下:
<?php
session_start();
session_unset();
session_destroy();
?>

讀取 session

php 內置的 $_SESSION 變量可以很方便的訪問設置的 session 變量。
復制代碼 代碼如下:
<?php
session_start();
echo "登記的用戶名為:".$_SESSION["username"];    //輸出 登記的用戶名為:nostop
?>

檢查變量是否被登記為會話變量 session_is_registered
語法:boobean session_is_registered(string name);
這個函數可檢查當前的session之中是否已有指定的變量注冊,參數name就是要檢查的變量名。成功則返回邏輯值true。
復制代碼 代碼如下:
<?php
    session_start();
    if(!session_is_registered("gender")){ //判斷當前會話變量是否注冊
        session_register("gender");    //注冊變量
    }
    $gender="女";
    echo $_SESSION['gender'];  //女
?>

存取當前會話名稱  session_name
語法:boolean session_name(string [name]);
這個函數可取得或重新設置當前session的名稱。若無參數name則表示獲取當前session名稱,加上參數則表示將session名稱設為參數name。
復制代碼 代碼如下:
<?php
$sessionName = session_name();   //取得當前 Session 名,默認為 phpSESSID
$sessionID = $_GET[$sessionName];   //取得 Session ID
session_id($sessionID);      //使用 session_id() 設置獲得的 Session ID
?>

存取當前會話標識號session_id
語法:boolean session_id(string [id]);
這個函數可取得或重新設置當前存放session的標識號。若無參數id則表示只獲取當前session的標識號,加上參數則表示將session的標識號設成新指定的id。
設置 Session 的生存期
復制代碼 代碼如下:
<?php
    session_start
    // 保存一天
    $lifeTime = 24 * 3600;
    setcookie(session_name(), session_id(), time() + $lifeTime, "/");
?>

session_set_cookie_params:設置 Session 的生存期的,該函數必須在 session_start() 函數調用之前調用。
如果客戶端使用 IE 6.0 , session_set_cookie_params(); 函數設置 Cookie 會有些問題,所以我們還是手動調用 setcookie 函數來創建 cookie。
復制代碼 代碼如下:
<?php
// 保存一天
  $lifeTime = 24 * 3600;
  session_set_cookie_params($lifeTime);
  session_start();
  $_session["admin"] = true;
?>

設置 Session 文件的保存路徑
session_save_path() :必須在 session_start() 函數調用之前調用。
復制代碼 代碼如下:
<?php
  // 設置一個存放目錄
  $savePath = "./session_save_dir/";
  // 保存一天
  $lifeTime = 24 * 3600;
  session_save_path($savePath);
  session_set_cookie_params($lifeTime);
  session_start();
  $_session["admin"] = true;
?>

<?php
session_start();    //啟動Session
$username='nostop';
session_register('username');    //注冊一個名為username變量
echo '登記的用戶:'.$_SESSION['username'];    //登記的用戶:nostop   讀取Session變量

$_SESSION['age']=23;    //聲明一個名為age的變量,并賦值
echo '年齡:'.$_SESSION['age']; //年齡:23

session_unregister('username'); //注銷Session變量
echo $_SESSION['username'];  //空
echo $_SESSION['age'];//23

unset($_SESSION['age']); //注銷Session變量
echo '登記的用戶:'.$_SESSION['username']; //空
echo '年齡:'.$_SESSION['age']; //空
?>

注意:

1:在調用Session_Start()之前不能有任何輸出.例如下面是錯誤的.


1行
2行 <?php
3行 Session_Start();//之前在第一行已經有輸出
4行 .....
5行 ?>

提示1:

凡是出現"........headers already sent..........",就是Session_Start()之前向瀏覽器輸出信息.
去掉輸出就正常,(COOKIE也會出現這種錯誤,錯誤原因一樣)

提示2:

如果你的Session_Start()放在循環語句里,并且很難確定之前哪里向瀏覽器輸出信息,可以用下面這種方法:
1行 <?php Ob_Start(); ?>
........這里是你的程序......


2:這是什么錯誤

Warning: session_start(): open(/tmpsess_7d190aa36b4c5ec13a5c1649cc2da23f, O_RDWR) failed:....
因為你沒有指定session文件的存放路徑.

解決方法:

(1)在c盤建立文件夾tmp
(2)打開php.ini,找到session.save_path,修改為session.save_path= "c:/tmp"

php技術教你如何使用php session,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 五月激情综合婷婷 | 国产成人精品一区二区仙踪林 | 激情五月婷婷综合 | 最新精品国产 | 99精品国产自产在线观看 | 免费毛片在线视频 | 自拍偷拍国语对白 | 香蕉久久影院 | 精品国产福利片在线观看 | 亚洲日本一区二区三区高清在线 | 国产精品对白刺激 | 亚洲综合国产 | 日韩免费视频一区 | 国产成人一区二区三区在线视频 | 精品伊人久久久大香线蕉欧美 | 一级做a爰在线就看 | 国产99视频精品草莓免视看 | 在线国产高清 | 中文字幕精品一区影音先锋 | 亚洲国产精品久久久天堂 | 视色4se成人午夜精品 | 久久久久久久一精品 | 亚洲经典激情春色另类 | 欧美亚洲综合另类成人 | 多人伦交性欧美在线观看 | 91国视频 | 日本一区二区成人教育 | 色综合色狠狠天天综合色 | 色五月在线视频 | 五月婷婷丁香综合网 | 一本色道久久综合狠狠躁 | 久久伊人精品青青草原2021 | 成人免费观看视频 | 在线观看视频一区二区三区 | 亚洲合集综合久久性色 | 一级不卡毛片 | 国产精品亚洲综合色拍 | 美女黄视频在线 | 天堂在线www天堂中文在线 | 国产精品视频网址 | 91免费视频网站 |