導航:首頁 > 編程語言 > php文件後綴截取

php文件後綴截取

發布時間:2022-04-27 07:32:55

A. php怎麼獲取當前頁面的後綴文件名

1、第一次獲得文件路徑,假如變數設為path

$path=$_SERVER['REQUEST_URI'];

2、用basename函數即可獲得路徑中的文件名部分:

$filename=basename($path);

3.輸出顯示:
echo $filename;

B. php截取文件擴展名

解決樓主的問題的方法就是,分開寫代碼,即:
$filearr = split(".",$filename);
$filetype = end($filearr);

split 函數用來分割字元串的時候,基本等同於函數 preg_grep,分割表達式可以是一個正則表達式,也可以是一個普通字元串,所以本身的執行效率很低,這一點你要記得……
所以,實現你現在的這個需求的話,最好用explode函數,使用普通字元作為分割表達式……

但是也的確如樓上所說,split 函數(PHP里)已經棄用,你可以使用 preg_match、preg_match_all 、preg_grep 等使用正則表達式作為分割的函數來替代。

就整個你的需求而言,你的思路還不很好,當一個文件名是【a.b.c.d.e.f.g.php】的時候,程序要浪費多餘的資源來分割其實你不用的a、b、c……,
所以要簡單滿足你取後綴名的需求的代碼應該是:
$filetype=substr(strrchr($filename,'.'),1);

此外還有:$path_info = pathinfo($filename); $filetype = $path_info['extension']; 其實不是很推薦。

下面比較一下它們各自的執行效率:
設文件名是:aaa.bb.php、循環執行10000次;執行10次取平均值:
split + end :0.067644s
explode + end :0.016251s
pathinfo + ['extension'] :0.018983s
strrchr + substr :0.008611s

【以上文字現場版純手敲,2012-2-25 10:41,謝謝】

C. php 獲取url地址文件後綴

$array = pathinfo(url);
$array['extension']; 是後綴

D. 如何用php獲取文件名後綴

php獲取文件後綴名(format file)
//方法一:
復制代碼 代碼如下:

<?php
function extend_1( $file_name )
{
$retval = 「」 ;
$pt = strrpos ( $file_name , 「.」 );
if ( $pt ) $retval = substr ( $file_name , $pt +1, strlen ( $file_name ) - $pt );
return ( $retval );
}

//方法二
復制代碼 代碼如下:

function extend_2( $file_name )
{
$extend = pathinfo ( $file_name );
$extend = strtolower ( $extend [ "extension" ]);
return $extend ;
}

//方法三
復制代碼 代碼如下:

function extend_3( $file_name )
{
$extend = explode ( 「.」 , $file_name );
$va = count ( $extend )-1;
return $extend [ $va ];
}

//方法四
復制代碼 代碼如下:

function getFileExt( $file_name )
{
while ( $dot = strpos ( $file_name , 「.」 ))
{
$file_name = substr ( $file_name , $dot +1);
}
return $file_name ;
}
?>

另外:
PHP pathinfo() 函數
PHP Filesystem 函數
定義和用法
pathinfo() 函數以數組的形式返迴文件路徑的信息。
語法
pathinfo(path,options)
參數
描述
path
必需。規定要檢查的路徑。
process_sections
可選。規定要返回的數組元素。默認是 all。
可能的值:
PATHINFO_DIRNAME – 只返回 dirname
PATHINFO_BASENAME – 只返回 basename
PATHINFO_EXTENSION – 只返回 extension
說明
pathinfo() 返回一個關聯數組包含有 path 的信息。
包括以下的數組元素:
[dirname]
[basename]
[extension]
提示和注釋
注釋:如果不是要求取得所有單元,則 pathinfo() 函數返回字元串。
例子
例子 1
復制代碼 代碼如下:

<?phpprint_r( pathinfo ( 「/testweb/test.txt」 ));?>
// 輸出:
// Array([dirname] => /testweb[basename] => test.txt[extension] => txt)

例子 2
復制代碼 代碼如下:

<?phpprint_r( pathinfo ( 「/testweb/test.txt」 ,PATHINFO_BASENAME));?>
// 輸出:
// test.txt

E. php怎麼獲取當前頁面的後綴文件名

<?php
$url = $_SERVER['PHP_SELF'];
$filename= substr( $url , strrpos($url , '/')+1 );
echo $filename;
?>

F. php有哪些常用的後綴

PHP文件的固定後綴是也只能是.php,如果隨意修改伺服器會出現不能解析的情況,如果是在Linux上,你可以使用偽靜態的方式把他改成其他的,但在創建的時候則不能這么做

G. php 取文件後綴名幾種有效的方法

PHP中獲取文件擴展名的N種方法
從網上收羅的,基本上就以下這幾種方式:


第1種方法:
functionget_extension($file)
{
substr(strrchr($file,'.'),1);
}
第2種方法:
functionget_extension($file)
{
returnsubstr($file,strrpos($file,'.')+1);
}
第3種方法:
functionget_extension($file)
{
returnend(explode('.',$file));
}
第4種方法:
functionget_extension($file)
{
$info=pathinfo($file);
return$info['extension'];
}
第5種方法:
functionget_extension($file)
{
returnpathinfo($file,PATHINFO_EXTENSION);
}
以上幾種方式粗看了一下,好像都行,特別是1、2種方法,在我不知道pathinfo有第二個參數之前也一直在用。但是仔細考慮一下,前四種方法都有各種各樣的毛病。要想完全正確獲取文件的擴展名,必須要能處理以下三種特殊情況。
沒有文件擴展名
路徑中包含了字元.,如/home/test.d/test.txt
路徑中包含了字元.,但文件沒有擴展名。如/home/test.d/test
很明顯:1、2不能處理第三種情況,3不能正確處理第一三種情況。4可以正確處理,但是在不存在擴展名時,會發出一個警告。只有第5種方法才是最正確的方法。順便看一下pathinfo方法。官網上介紹如下:
$file_path=pathinfo('/www/htdocs/your_image.jpg');

echo"$file_path['dirname'] ";
echo"$file_path['basename'] ";
echo"$file_path['extension'] ";
echo"$file_path['filename'] ";//onlyinPHP5.2+
它會返回一個數組,包含最多四個元素,但是並不會一直有四個,比如在沒有擴展名的情況下,就不會有extension元素存在,所以第4種方法才會發現警告。但是phpinfo還支持第二個參數。可以傳遞一個常量,指定返回某一部分的數據:
PATHINFO_DIRNAME-目錄
PATHINFO_BASENAME-文件名(含擴展名)
PATHINFO_EXTENSION-擴展名
PATHINFO_FILENAME-文件名(不含擴展名,PHP>5.2)
這四個常量的值分別是1、2、4、8,剛開始我還以為可以通過或運算指定多個:
pathinfo($file,PATHINFO_EXTENSION|PATHINFO_FILENAME);
後來發現這樣不行,這只會返回幾個進行或運算常量中最小的那個。也就是四個標志位中最小位為1的常量。

H. PHP 沒有後綴名的文件怎麼獲取後綴

我給你思路吧

首先沒有後綴,那隻能通過文件頭來判斷了

functiongetFileType($file){
if(!empty($file)){
//打開文件
$filehead=fopen($file,'r');
//讀取文件2位元組
$bin=fread($filehead,2);
fclose($filehead);
//二進制字元串對數據進行解包
$data=unpack('C2chars',$bin);
$type_code=intval($data['chars1'].$data['chars2']);
switch($type_code){
case7790:
$fileType='exe';
break;
case7784:
$fileType='midi';
break;
case8075:
$fileType='zip';
break;
case8297:
$fileType='rar';
break;
case255216:
$fileType='jpg';
break;
case7173:
$fileType='gif';
break;
case6677:
$fileType='bmp';
break;
case13780:
$fileType='png';
break;
default:
$fileType='unknown';
break;
}
return$fileType;

}


-

I. PHP函數獲取URL文件後綴

//取出url地址中文件擴展名
$url = "http://sdk.tools.sinaapp.com/index.php?appname=beipiao&version=1";

function getFileName($url){
$a = explode('?', $url);
$b = strrpos($a[0], '.'); //strrpos(被搜索字元串,要查找字元串,[查找開始的位置]) 查找字元串最後一次出現的位置: 找到則返回最後一次出現的位置;未找到則返回false
$c = substr($a[0], $b+1, 3); //substr(被操作字元串,開始位置,[結束位置]) 返回字元串的一部分

return $c;
}
echo getFileName($url)."<br>";

//第二種方法
function getFileNameTwo($url){
$a = parse_url($url, PHP_URL_PATH); //parse_url() 解析url,返回其組成部分
$b = pathinfo($a, PATHINFO_EXTENSION); //pathinfo()

return $b;
}
print_r(getFileNameTwo($url));

J. PHP怎麼獲取文件類型

<?php
$file="php.txt";
//打開文件,r表示以只讀方式打開
$handle=fopen($file,"r");
//獲取文件的統計信息
$fstat=fstat($handle);
echo"文件名:".basename($file)."<br>";
//echo"文件大小:".round(filesize("$file")/1024,2)."kb<br>";
echo"文件大小:".round($fstat["size"]/1024,2)."kb<br>";
//echo"最後訪問時間:".date("Y-m-dh:i:s",fileatime($file))."<br>";
echo"最後訪問時間:".date("Y-m-dh:i:s",$fstat["atime"])."<br>";
//echo"最後修改時間:".date("Y-m-dh:i:s",filemtime($file))."<br>";
echo"最後修改時間:".date("Y-m-dh:i:s",$fstat["mtime"]);
?>

閱讀全文

與php文件後綴截取相關的資料

熱點內容
壓縮機異音影響製冷嗎 瀏覽:711
德斯蘭壓縮機 瀏覽:490
程序員太極拳視頻 瀏覽:531
網上購買加密鎖 瀏覽:825
安卓為什麼軟體要隱私 瀏覽:83
虛擬主機管理源碼 瀏覽:811
java圖形圖像 瀏覽:230
單片機輸出口電平 瀏覽:486
java配置資料庫連接 瀏覽:479
java多態的體現 瀏覽:554
java的split分隔符 瀏覽:128
跪著敲代碼的程序員 瀏覽:238
web和php有什麼區別 瀏覽:120
加密的電梯卡怎麼復制蘋果手機 瀏覽:218
warez壓縮 瀏覽:137
黑馬程序員培訓機構官網天津 瀏覽:904
mainjavasrc 瀏覽:58
如何買伺服器挖礦 瀏覽:292
php批量上傳文件夾 瀏覽:560
安卓固件怎麼更新 瀏覽:169