php 获取当前目录名称,PHP获取当前执行php文件名的代码
今天寫表白墻時候的導航判斷遇到的這個問題。我的解決思路是這樣:
判斷當前的php文件名來確定導航條的哪塊高亮。
那php如何獲取當前的url文件名呢?
我是這樣處理的 :shock:
教程
首先肯定是要獲取當前頁面URL的,在這里我們使用php的$_SERVER['PHP_SELF']來獲取獲取網(wǎng)頁地址
假設url為 https://www.jb51.net/index.php
$php_Self= $_SERVER['PHP_SELF']; //獲取網(wǎng)頁地址
//輸出結(jié)果:https://www.jb51.net/index.php
輸出后發(fā)現(xiàn),我們只需要index.php,前面一大串東西都是沒用的。
怎么辦呢?
這里我們就用到了substr()函數(shù)。
substr()是用來返回字符串的一部分:
substr語法
substr(string,start,length)
參數(shù)
描述
string
必需。規(guī)定要返回其中一部分的字符串。
start
必需。規(guī)定在字符串的何處開始。
正數(shù) – 在字符串的指定位置開始
負數(shù) – 在從字符串結(jié)尾開始的指定位置開始
0 – 在字符串中的第一個字符處開始
length
可選。規(guī)定被返回字符串的長度。默認是直到字符串的結(jié)尾。
正數(shù) – 從?start?參數(shù)所在的位置返回的長度
負數(shù) – 從字符串末端返回的長度
看到這個函數(shù)的第二個參數(shù),規(guī)定在字符串的何處開始。很顯然是在url中的最后一個/開始才是我們所需要的。
于是我們又需要用到strrpos()函數(shù)來取得/最后一次出現(xiàn)的位置。
strrpos語法
strrpos(string,find,start)
參數(shù)
描述
string
必需。規(guī)定被搜索的字符串。
find
必需。規(guī)定要查找的字符。
start
可選。規(guī)定在何處開始搜索。
所以總代碼如下:
$php_Self = substr($_SERVER['PHP_SELF'],strripos($_SERVER['PHP_SELF'],"/")+1);
//為啥要加1呢?因為要排除前面的那個 /
比較推薦的一個函數(shù)
//獲得當前的腳本網(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;
}
這樣就解決了,很多情況下都是需要一些字符串截取函數(shù)的幫助才可以得到我們想要的結(jié)果。
總結(jié)
以上是生活随笔為你收集整理的php 获取当前目录名称,PHP获取当前执行php文件名的代码的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 王者荣耀如何修改实名认证
- 下一篇: php界面设置编码格式,php设置编码格