天天看點

簡述php和web互動過程,PHP與Web頁面互動操作執行個體分析

PHP與Web頁面互動操作執行個體分析,表單,數組,參數,字元串,屬性

PHP與Web頁面互動操作執行個體分析

易采站長站,站長之家為您整理了PHP與Web頁面互動操作執行個體分析的相關内容。

本文執行個體講述了PHP與Web頁面互動操作。分享給大家供大家參考,具體如下:

Web互動

1.Web表單互動 當表單的method屬性送出方式為POST時,浏覽器發送POST請求 當表單的method屬性送出方式為GET時,浏覽器發送GET請求

當PHP收到來自浏覽器送出的資料後,會自動儲存到超全局變量中。

超全局變量是PHP預定義好的變量,可以再PHP腳本的任何位置使用 常見的超全局變量數組變量有$ _POST、$_GET等 通過POST方式送出的資料會儲存到$_POST中 通過GET方式送出的資料會儲存到$_GET中

2.URL參數互動

當表單以GET方式送出時,會将使用者填寫的内容放在URL參數中進行送出。

表單的method屬性删除(或将其值改為get),然後送出表單,會得到如下URL。

簡述php和web互動過程,PHP與Web頁面互動操作執行個體分析

"?"後面的内容為參數資訊

參數是由參數名和參數值組成的,中間使用等号“=”進行連接配接

多個參數之間使用“&”分隔

username和password是參數名,對應表單中的name屬性

test和123456是參數值,對應使用者填寫的内容 if (isset($_GET['username']) && isset($_GET['password'])) { echo $_GET['username']; // 輸出結果:test echo $_GET['password']; // 輸出結果:123456}

3.數組方式送出資料

複選框是一種支援送出多個值的表單控件

在編寫表單時應将其 name屬性設定為數組 遊泳 讀書 跑步print_r($_POST['hobby']);

$_POST中的hobby元素是一個索引數組,數組中的元素是使用者所選複選框對應的value屬性值

當使用者未選中任何複選框時,$_POST數組中将不存在hobby元素 // 接收代碼$_POST['user']['name'];$_POST['user']['a'][1];$_POST['user'][1]['b'];$_POST['user']['c'][0];$_POST['user'][2]['d'];$_POST['user'][3][0];$_POST['user'][3][1][0];$_POST['user'][3][2][0];$_POST['user'][4][0][2];$_POST['user'][4][0][3];

當需要處理的表單内容非常多的情況下,表單中name屬性的命名可以采用多元數組的形式,便于開發,其使用方式與PHP中的數組非常相似

例如,開發線上考試系統時,表單中有填空題、單選題、多選題、判斷題等多種題型,這時可以将每種題型放到一個數組裡面進行送出,PHP收到後分别周遊每種題型的數組即可。

4.HTML特殊字元處理

在将使用者輸入的内容輸出到HTML中顯示時,會遇到特殊字元問題。

例如,使用者送出一段HTML代碼時,為了将代碼原樣顯示,需要将裡面的特殊字元串轉換為實體字元,防止被浏覽器解析

若沒有對這些特殊字元進行處理,會給網站的安全帶來風險。

為了解決這類問題,PHP提供了許多專門處理HTML特殊字元的函數

簡述php和web互動過程,PHP與Web頁面互動操作執行個體分析

nl2br(),echo nl2br(“123\n456”, false);

strip_tags()可以去除字元串中的标記部分,通常用于讀取一段HTML代碼後,去除其中的HTML标記,隻保留文本。 $html = <<

蘋果香蕉123456789EOD;echo strip_tags($html);//輸出結果蘋果香蕉123456789

轉換和還原字元串中的HTML特殊字元,

htmlspecialchars()和htmlspecialchars_decode()函數分别用于轉換和還原字元串中的HTML特殊字元,具體包括“&”、單引号、雙引号、“”,其中單引号需要将函數的第2個參數設定為ENT_QUOTES常量才會進行轉換。 $html = "123

4'56";$html = htmlspecialchars($html, ENT_QUOTES | ENT_HTML5);echo $html, "\n";$str = htmlspecialchars_decode($html, ENT_QUOTES | ENT_HTML5);echo $html;//輸出結果123<br>4'56123

4'56

urlencode()和urldecode()函數,urlencode()和urldecode()函數主要用于在HTML中輸出URL參數時進行編碼轉換,前者用于編碼,後者用于解碼。

注意,當使用$_GET接收參數時,獲得的資料已經是URL解碼後的結果,無需手動進行處理。 $name = 'A&B C';$name = urlencode($name);// URL 編碼echo "http://localhost/test.php?name=$name", "\n";echo urldecode($name);// URL解碼//輸出結果http://localhost/test.php?name=A%26B+CA&B C

http_build_query(),利用http_build_query()函數可以将PHP關聯數組轉換為URL參數字元串。 $params = ['name' => 'test','hobby' => ['reading', 'running']];$query = http_build_query($params);echo "http://localhost/test.php?$query";//輸出結果http://localhost/test.php?name=test&hobby%5B0%5D=reading&hobby%5B1%5D=running

更多關于PHP相關内容感興趣的讀者可檢視本站專題:《php程式設計安全教程》、《php安全過濾技巧總結》、《PHP基本文法入門教程》、《php面向對象程式設計入門教程》、《php字元串(string)用法總結》、《php+mysql資料庫操作入門教程》及《php常見資料庫操作技巧彙總》

希望本文所述對大家PHP程式設計有所幫助。以上就是關于對PHP與Web頁面互動操作執行個體分析的詳細介紹。歡迎大家對PHP與Web頁面互動操作執行個體分析内容提出寶貴意見