日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

php的pathinfo,php中PathInfo的用法举例(图文)

發布時間:2025/3/15 php 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php的pathinfo,php中PathInfo的用法举例(图文) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本節跟大家分享下php中全局變量$_SERVER['PATH_INFO']及pathinfo()函數的用法,就我所了解的當前流行的cms系統,比如dedecms與帝國cms均多有用到這二個,來定義或獲取全局信息。

來看個例子,有如下的網址:

http://www.jbxue.com/index.php/index/do.html?c=index&m=search

則,

$_SERVER['PATH_INFO'] = ‘/index/do.html’

$_SERVER['QUERY_STRING'] = 'c=index&m=search';

這里給出一個解析PATH_INFO的代碼:

/**

* pathinfo應用舉例

* edit by www.jbxue.com

*/

if( !isset( $_SERVER['PATH_INFO'] ) ){

$pathinfo = 'default';

}else{

$pathinfo = explode('/', $_SERVER['PATH_INFO']);

}

if( is_array($pathinfo) AND !empty($pathinfo) ){

$page = $pathinfo[1];

}else{

$page = 'a.php';

}

require "$page.php";

?>

下面再來看一個例子,這里介紹的不再是$_SERVER['PATH_INFO']全局變量了,而是我們今天的主角pathinfo函數。

pathinfo()函數

pathinfo()函數返回一個包含了文件信息的數組,數組中有四個元素,分別是dirname、basename、extension、filename。

例如,有如下的文件路徑,可以用pathinfo進行分解:

//pathinfo函數用法

$path = "/www/jbxue/images/logo.jpg";

$fileArr = pathinfo($path);

print_r($fileArr);

//輸出結果:Array ( [dirname] => /www/jbxue/images [basename] => logo.jpg [extension] => jpg [filename] => logo )

//根據數組的鍵名就可以獲得對應的鍵值

echo $fileArr['filename'];

//輸出結果:logo

echo $fileArr['extension'];

//輸出結果:jpg

?>

最后,說說pathinfo()函數在處理中文時遇到的問題及解決方法。

問題描述:

pathinfo在處理中文文件名時,如果中文在字首就出現獲取的filename為空,英文在字首后面是中文的則能獲取到。

如下圖所示:

可以用如下的函數取代它,代碼如下:

//增強型的pathinfo函數

//edit by www.jbxue.com

function path_info($filepath)

{

$path_parts = array();

$path_parts ['dirname'] = rtrim(substr($filepath, 0, strrpos($filepath, '/')),"/")."/";

$path_parts ['basename'] = ltrim(substr($filepath, strrpos($filepath, '/')),"/");

$path_parts ['extension'] = substr(strrchr($filepath, '.'), 1);

$path_parts ['filename'] = ltrim(substr($path_parts ['basename'], 0, strrpos($path_parts ['basename'], '.')),"/");

return $path_parts;

}

?>

用這個函數去處理中文文件路徑或文件時,就不會有問題了。

如下圖所示:

總結

以上是生活随笔為你收集整理的php的pathinfo,php中PathInfo的用法举例(图文)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。