本教程主要是講一下關于日期、表單接收、session、cookie在php應用與使用方法,下面我們一一舉例說明關于php中這些入門教程也是基礎要學的內容.
session:PHP實例代碼如下:
- <?php
- session_start();//session在瀏覽器關閉后馬上失效,需要這樣聲明才能讀寫session
- $_session['id']='服務器';//這就是聲明和初始化了,和數組用法一樣
- $_session['name']='會話';
- print_r($_session);//會話注冊成功輸出一個數組
- echo "<br>";
- $_session['id']='還是服務器';//改變一個會話,再輸出看看
- unset($_session['name']);//注銷一個會話,再輸出看看
- print_r($_session);
- echo "<br>";
- ?>
會話支持允許用戶注冊任意數目的變量并保留給各個請求使用,當來客訪問網站時,php 會自動(如果 session.auto_start 被設為 1)或在用戶請求時(由 session_start() 明確調用或 session_register() 暗中調用)檢查請求中是否發送了特定的會話 id,如果是,則之前保存的環境就被重建.
page1.php代碼如下:
- session_start();
- echo 'welcome to page #1';
- /* 創建session變量并給session變量賦值 */
- $_session['favcolor'] = 'green';
- $_session['animal'] = 'cat';
- $_session['time'] = time();
page2.php代碼如下:
- session_start();
- print $_session['animal']; // 打印出單個session
- var_dump($_session); // 打印出page1.php傳過來的session值
get:$_get 變量
$_get 變量是一個數組,內容是由 http get 方法發送的變量名稱和值。
$_get 變量用于收集來自 method="get" 的表單中的值,從帶有 get 方法的表單發送的信息,對任何人都是可見的(會顯示在瀏覽器的地址欄),并且對發送的信息量也有限制(最多 100 個字符).
PHP實例代碼如下:
- <form action="welcome.php" method="get">
- name: <input type="text" name="name" />
- age: <input type="text" name="age" />
- <input type="submit" />
- </form>
當用戶點擊提交按鈕時,發送的 url 會類似這樣:
http://m.survivalescaperooms.com/welcome.php?name=peter&age=37"welcome.php" 文件現在可以通過 $_get 變量來獲取表單數據了(請注意,表單域的名稱會自動成為 $_get 數組中的 id 鍵),代碼如下:
- welcome <?php echo $_get["name"]; ?>.<br />
- you are <?php echo $_get["age"]; ?> years old!
看個簡單詳細的實例,代碼如下:
- <?php
- echo $str=urlencode("第一頁");//url變量編碼,跟google一樣
- echo "<br>".urldecode($str);//url變量解碼,我看到了
- echo "<br><a href=index.php?page=".$str.">第一頁</a>";
- echo "<br>";
- if($_get)echo "變量已接收:".$_get['page'];//$_get對應$_post,php是自動識別url編碼并自動解碼好的。
- echo "<br>";
- ?>
cookie:php cookie 用法
- $time = time() + 300; //5分鐘過期
- $code = md5($string . $time . $salt);
- setcookie('check_time', $time);
- setcookie('code', $code);
- //驗證部分
- $time = time();
- if($check_time < $time)//如果服務器時間比驗證時間大,算過期
- //expire過期
- if(md5($string . $check_time . $salt) !== $code)
- //錯誤
- 其實這種方法相對好一點,因為過期不能提交了,但是過期之前還是可以無限提交的
下面再看一cookie實例,代碼如下:
- <?php
- setcookie("id","客戶端");//這就是聲明和初始化cookie的函數。關閉瀏覽器即失效
- setcookie("name","會話",time()+3600);//自此1小時后失效
- print_r($_cookie);//會話注冊成功輸出一個數組,也可以用$http_cookie_vars訪問
- echo "<br>";
- setcookie("id","還是客戶端");//改變一個會話,再輸出看看
- unset($_cookie['name']);//注銷一個會話,再輸出看看,等價于setcookie("name","",time()-1);這是很多書上說的,其實用unset也能注銷
- print_r($_cookie);
- echo "<br>";
- ?>
日期:代碼如下:
- <?php
- echo time();//返回一串以秒計算的時間數字戳
- echo "<br>";
- echo date("y-m-d h:i:s",time()+8*3600);//格式化時間,+8*3600變為中國時區時間
- echo "<br>";
- $str="2010-08-24 10:26:10";
- echo date("y-m-d h:i:s",strtotime($str));//strtotime將字符串轉為時間戳
- echo "<br>";
- ?>
新聞熱點
疑難解答