PHP獲取當(dāng)前執(zhí)行php文件名的代碼
今天寫(xiě)表白墻時(shí)候的導(dǎo)航判斷遇到的這個(gè)問(wèn)題。我的解決思路是這樣:
判斷當(dāng)前的php文件名來(lái)確定導(dǎo)航條的哪塊高亮。
那php如何獲取當(dāng)前的url文件名呢?
我是這樣處理的 :shock:
教程
首先肯定是要獲取當(dāng)前頁(yè)面URL的,在這里我們使用php的$_SERVER['PHP_SELF']來(lái)獲取獲取網(wǎng)頁(yè)地址
假設(shè)url為 http://m.fzitv.net/index.php
$php_Self= $_SERVER['PHP_SELF']; //獲取網(wǎng)頁(yè)地址 //輸出結(jié)果:http://m.fzitv.net/index.php
輸出后發(fā)現(xiàn),我們只需要index.php,前面一大串東西都是沒(méi)用的。
怎么辦呢?
這里我們就用到了substr()函數(shù)。
substr() 是用來(lái)返回字符串的一部分:
substr語(yǔ)法
substr(string,start,length)
| 參數(shù) | 描述 |
|---|---|
| string | 必需。規(guī)定要返回其中一部分的字符串。 |
| start |
必需。規(guī)定在字符串的何處開(kāi)始。
|
| length |
可選。規(guī)定被返回字符串的長(zhǎng)度。默認(rèn)是直到字符串的結(jié)尾。
|
看到這個(gè)函數(shù)的第二個(gè)參數(shù),規(guī)定在字符串的何處開(kāi)始。很顯然是在url中的最后一個(gè)/開(kāi)始才是我們所需要的。
于是我們又需要用到 strrpos()函數(shù)來(lái)取得/最后一次出現(xiàn)的位置。
strrpos語(yǔ)法
strrpos(string,find,start)
| 參數(shù) | 描述 |
|---|---|
| string | 必需。規(guī)定被搜索的字符串。 |
| find | 必需。規(guī)定要查找的字符。 |
| start | 可選。規(guī)定在何處開(kāi)始搜索。 |
所以總代碼如下:
$php_Self = substr($_SERVER['PHP_SELF'],strripos($_SERVER['PHP_SELF'],"/")+1); //為啥要加1呢?因?yàn)橐懦懊娴哪莻€(gè) /
比較推薦的一個(gè)函數(shù)
//獲得當(dāng)前的腳本網(wǎng)址
function GetCurUrl()
{
if(!empty($_SERVER["REQUEST_URI"]))
{
$scriptName = $_SERVER["REQUEST_URI"];
$nowurl = $scriptName;
} else
{
$scriptName = $_SERVER["PHP_SELF"];
if(empty($_SERVER["QUERY_STRING"]))
{
$nowurl = $scriptName;
} else
{
$nowurl = $scriptName."?".$_SERVER["QUERY_STRING"];
}
}
return $nowurl;
}
如果感覺(jué)上面的文章不夠細(xì),建議大家看這篇文章:http://m.fzitv.net/article/22056.htm
這樣就解決了,很多情況下都是需要一些字符串截取函數(shù)的幫助才可以得到我們想要的結(jié)果。
相關(guān)文章
thinkphp框架下404頁(yè)面設(shè)置 僅三步
這篇文章主要為大家詳細(xì)介紹了ThinkPHP 404頁(yè)面的設(shè)置方法,僅需要三步實(shí)現(xiàn)404頁(yè)面的設(shè)置,感興趣的朋友可以參考一下2016-05-05
用PHP將Unicode 轉(zhuǎn)化為UTF-8的實(shí)現(xiàn)方法(推薦)
下面小編就為大家?guī)?lái)一篇用PHP將Unicode 轉(zhuǎn)化為UTF-8的實(shí)現(xiàn)方法(推薦)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-02-02
PHP中Memcache操作類(lèi)及用法實(shí)例
這篇文章主要介紹了PHP中Memcache操作類(lèi)及用法,以實(shí)例形式詳細(xì)分析了Memcache類(lèi)連接數(shù)據(jù)庫(kù)及進(jìn)行緩存操作的具體用法,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2014-12-12
控制PHP的輸出:緩存并壓縮動(dòng)態(tài)頁(yè)面
PHP4中最令人滿(mǎn)意的事是——你可以讓PHP緩存所有由腳本生成的輸出,在你決定把它們送出之前,瀏覽器方是不會(huì)收到任何內(nèi)容的2013-06-06
php 大數(shù)據(jù)量及海量數(shù)據(jù)處理算法總結(jié)
大數(shù)據(jù)量的問(wèn)題是很多面試筆試中經(jīng)常出現(xiàn)的問(wèn)題,比如baidu google 騰訊 這樣的一些涉及到海量數(shù)據(jù)的公司經(jīng)常會(huì)問(wèn)到2011-05-05
PHP遞歸實(shí)現(xiàn)無(wú)限級(jí)分類(lèi)的代碼示例
無(wú)限級(jí)分類(lèi)是一種對(duì)商品或信息進(jìn)行分類(lèi)的方式,在這種分類(lèi)方式中,每個(gè)分類(lèi)都可以再次細(xì)分出更多的子分類(lèi),形成無(wú)限的級(jí)別,本文給大家介紹了如何使用PHP遞歸實(shí)現(xiàn)無(wú)限級(jí)分類(lèi),文中有詳細(xì)的代碼示例,需要的朋友可以參考下2023-10-10
php實(shí)現(xiàn)等比例不失真縮放上傳圖片的方法
這篇文章主要介紹了php實(shí)現(xiàn)等比例不失真縮放上傳圖片的方法,結(jié)合實(shí)例形式分析了php基于自定義函數(shù)實(shí)現(xiàn)等比例不失真縮放上傳圖片的具體功能定義與使用方法,需要的朋友可以參考下2016-11-11

