日韩精品中文字幕一区二区-日韩精品中文字幕一区-日韩精品中文字幕视频-日韩精品在线一区二区三区-第一页在线-第一福利视频

當前位置: 首頁編程開發PHP → 實用的腳本 php實用的腳本程序

實用的腳本 php實用的腳本程序

更多

現在來編寫一些更實用的腳本,比如檢查瀏覽頁面的訪問者在用什么瀏覽器。要達到這個目的,需要檢查用戶的 agent 字符串,它是瀏覽器發送的 HTTP 請求的一部分。該信息被存儲在一個變量中。在 PHP 中,變量總是以一個美元符開頭。我們現在感興趣的變量是 $_SERVER['HTTP_USER_AGENT']。

Note: $_SERVER 是一個特殊的 PHP 保留變量,它包含了 web 服務器提供的所有信息,被稱為超全局變量。請查閱本手冊“超全局變量”中的有關內容以獲取更多信息。這些特殊的變量是在 PHP » 4.1.0 版本引入的。在這之前使用 $HTTP_*_VARS 數組,如 $HTTP_SERVER_VARS。盡管現在已經不用了,但它們在新版本中仍然存在(參見“舊代碼”一節中的注解)。

要顯示該變量,只需簡單地進行如下操作:

 

Example #1 打印一個變量(數組元素)

<?php 
echo $_SERVER['HTTP_USER_AGENT']; 
?>

該腳本的輸出可能是:


Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)

 

PHP 有很多種不同類型的變量。在以上例子中我們打印了一個數組的單元。數組是一類非常有用的變量。

$_SERVER 只是 PHP 自動全局化的變量之一。可以查閱“保留變量”一節來查看這些變量的列表,或者也可以通過上節例子中 phpinfo() 函數的輸出來查看。

可以在一個 PHP 標識中加入多個 PHP 語句,也可以建立一個代碼塊來做比簡單的 echo 更多的事情。例如,如果需要識別 Internet Explorer,可以進行如下操作:

 

Example #2 流程控制與函數的使用

<?php
if (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== FALSE) {
    echo '正在使用 Internet Explorer。<br />';
}
?>

該腳本的輸出可能是:

正在使用 Internet Explorer。<br /> 

 

這里要介紹一些新的原理。上面用了一個 if 語句。如果用戶對 C 語言的基本語法比較熟悉,則應該對此很熟悉,否則,可能需要拿起任何一本 PHP 介紹性的書籍并閱讀前面的兩三個章節,或者也可以閱讀本手冊的“語言參考”一章。

需要介紹的第二個原理,是對 strpos() 函數的調用。strpos() 是 PHP 的一個內置函數,其功能是在一個字符串中搜索另外一個字符串。例如我們現在需要在 $_SERVER['HTTP_USER_AGENT'](即所謂的 haystack)變量中尋找 'MSIE'。如果在這個 haystack 中該字符串(即所謂的 needle)被找到,則函數返回 needle 在 haystack 中相對開頭的位置;如果沒有,則返回 FALSE。如果該函數沒有返回 FALSE,則 if 會將條件判斷為 TRUE 并運行其花括號 {} 內的代碼;否則,則不運行這些代碼。可以自己嘗試利用 if,else 以及其它的函數,例如 strtoupper() 和 strlen(),來建立類似的腳本。在本手冊中相關的頁面也包含有范例。如果對如何使用函數不是很確定,可以閱讀手冊中有關“如何閱讀函數定義”和“函數”的有關章節。

以下我們進一步顯示如何進出 PHP 模式,甚至是在一個 PHP 代碼塊的中間:

 

Example #3 混和 HTML 和 PHP 模式

<?php
if (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== FALSE) {
?>
<h3>strpos() 肯定沒有返回假 (FALSE)</h3>
<p>正在使用 Internet Explorer</p>
<?php
} else {
?>
<h3>strpos() 肯定返回假 (FALSE)</h3>
<center><b>沒有使用 Internet Explorer</b></center>
<?php
}
?>

該腳本的輸出可能是:

<h3>strpos() 肯定沒有返回假 (FALSE)</h3> <p>正在使用 Internet Explorer</p> 

 

和以上我們用一個 PHP 的 echo 語句來輸出不同的是,我們跳出了 PHP 模式來直接寫 HTML 代碼。這里很值得注意的一點是,對于這兩種情況而言,腳本的邏輯效率是相同的。在判斷了 strpos() 函數的返回值是 TRUE 或是 FALSE,也就是判斷了字符串 'MSIE' 是否被找到之后,最終只有一個 HTML 塊被發送給瀏覽者。

熱門評論
最新評論
昵稱:
表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
字數: 0/500 (您的評論需要經過審核才能顯示)
主站蜘蛛池模板: 小数加减法100道题| 张柏芝艳照无删减版| 我说你做| 邓稼先教学设计一等奖优秀教案| 我们的日子电视剧演员表| 美国伦理三颗熟樱桃| 孔大山| 抖音app下载| 邓家佳电影| 玉林电视台| 二年级上册道法教学计划 | 听风者电视剧40集完整版在线观看| 手机图片jpg格式转换器免费| 《欢乐谷》电影| 钦差大臣演员表| 散文诗二首批注| 滚筒娃娃肉| 搜狐手机网首页新闻| 黑玫瑰演员表| 《大海》歌词| 浪人街| 女演员大作战| 碟仙诡谭| 曙光初现时的最后阴影 电影| 永刚| 王家卫作品| 男插女曲| 死神来了电影| 成龙电影大全免费功夫片| 电影《皮囊》| 好快…好快的| 电影《迷雾》| 5.25心理健康日主题班会ppt| 戴安·梅尔致命诱饵电影上映时间| 《傲慢与偏见》电影在线观看| 绝战电视剧免费观看40集完整版| 红色一号电影| 日本电影部长| 误杀2剧情| 视频爱爱| 搏击俱乐部豆瓣|