php文件類型檢查類,php 獲取文件類型

本文目錄一覽:

PHP讀取文件前幾個位元組 判斷文件類型函數

PHP讀取文件前幾個位元組 判斷文件類型函數

/**

* 讀取文件前幾個位元組 判斷文件類型

*

* @return String

*/

function checkTitle($filename) {

$file     = fopen($filename, ‘rb’);

$bin      = fread($file, 2); //只讀2位元組

fclose($file);

$strInfo  = @unpack(‘c2chars’, $bin);

$typeCode = intval($strInfo[‘chars1’].$strInfo[‘chars2’]);

$fileType = ”;

switch ($typeCode)

{

case 7790:

$fileType = ‘exe’;

break;

case 7784:

$fileType = ‘midi’;

break;

case 8297:

$fileType = ‘rar’;

break;

case 255216:

$fileType = ‘jpg’;

break;

case 7173:

$fileType = ‘gif’;

break;

case 6677:

$fileType = ‘bmp’;

break;

case 13780:

$fileType = ‘png’;

break;

default:

$fileType = ‘unknown’.$typeCode;

}

//Fix

if ($strInfo[‘chars1′]==’-1′  $strInfo[‘chars2′]==’-40′ ) {

return ‘jpg’;

}

if ($strInfo[‘chars1′]==’-119′  $strInfo[‘chars2′]==’80’ ) {

return ‘png’;

}

return $fileType;

}

PHP判斷文件名是否符合規定類型

?php

$ereg = ‘[^0-9a-zA-Z_]’;

$value = ‘8aA_()’;

if(@ereg($ereg, $value, $arr)){

echo ‘不允許出現的字元’.$arr[0];

} else {

echo ‘未匹配正確’;

}

?

php獲取文件mime類型的幾種方法

php獲取文件mime類型有以下幾種方法:

1、mime_content_type()函數判斷獲取mime類型

mime_content_type返回指定文件的MIME類型,

用法:

echomime_content_type(‘php.gif’) .”\n”;

echomime_content_type(‘test.php’);

輸出:

image/gif

text/plain

但是php 5.3.0已經將該函數廢棄。如果仍想使用此函數,那麼可以對php進行配置啟用magic_mime擴展。

2、php Fileinfo 獲取文件MIME類型(finfo_open)

PHP官方推薦mime_content_type()的替代函數是Fileinfo函數。PHP

5.3.0+已經默認支持Fileinfo函數(fileinfo

support-enabled),不必進行任何配置即可使用finfo_open()判斷獲取文件MIME類型。

用法:

$finfo = finfo_open(FILEINFO_MIME);

$mimetype = finfo_file($finfo, $filename);

finfo_close($finfo);

3、image_type_to_mime_type()獲取圖片MIME類型

如果需要判斷MIME類型的文件只有圖像文件,那麼首先可以使用exif_imagetype()函數獲取圖像類型常量,再用image_type_to_mime_type()函數將圖像類型常量轉換成圖片文件的MIME類型。

注意:需要在php.ini中配置打開php_mbstring.dll(Windows需要)和extension=php_exif.dll。

4、php上傳文件獲取MIME類型

如果使用php上傳文件,檢測上傳文件的MIME類型,則可以使用全局變數$_FILES[‘uploadfile’][‘type’],由客戶端的瀏覽器檢測獲取文件MIME類型。

PHP怎麼獲取文件類型????

遍列你是會的吧,中間會得到文件的全名,你現在需要取出文件的擴展名,對吧?

例子代碼:

?php

$f=’/www/htdocs/index.html’;

$path_parts = pathinfo($f);

echo $path_parts[‘dirname’], “\n”;

echo $path_parts[‘basename’], “\n”;

echo $path_parts[‘extension’], “\n”; //你需要的就是這個,對吧?

echo $path_parts[‘filename’], “\n”;

?

判斷是否文件夾,要使用函數is_file,返回false的就是文件夾,例如:

?php

var_dump(is_file(‘a_file.txt’)) . “\n”;

var_dump(is_file(‘/usr/bin/’)) . “\n”;

?

bool(true)

bool(false)

php上傳文件是,判斷是否csv文件的文件類型怎麼寫?

$_FILES接收到文件信息是個數組。

其中$_FILES[‘myFile’][‘name’] 客戶端文件的原名稱 ,

您用『.』來分割$_FILES[‘myFile’][‘name’]分成一個索引數組,這個數組的最後一個值就是文件的擴展名。

或者你從最後一個「.」位置截取$_FILES[‘myFile’][‘name’],截取到最後。得到的結果也是文件的擴展名;

$_FILES[‘myFile’][‘type’]得到的是文件的 MIME類型,這個並不能很好的反映文件的擴展名,

例如:

MIME類型為「text/html」,這個類型對應.html .htm .stm三種文件擴展名

MIME類型為「text/plain」,對應的是.c .txt .h .bas四種文件擴展名

php 文件上傳怎樣設置文件的類型為所有類型(jpg,doc,rar,等所有文件類型)

一般PHP文件上傳時應自行設置檢查文件類型的,如果你不檢查就能上傳所有的文件類型了。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/253995.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-14 02:38
下一篇 2024-12-14 02:38

相關推薦

  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • PHP怎麼接幣

    想要在自己的網站或應用中接受比特幣等加密貨幣的支付,就需要對該加密貨幣擁有一定的了解,並使用對應的API進行開發。本文將從多個方面詳細闡述如何使用PHP接受加密貨幣的支付。 一、環…

    編程 2025-04-29
  • 使用PHP foreach遍歷有相同屬性的值

    本篇文章將介紹如何使用PHP foreach遍歷具有相同屬性的值,並給出相應的代碼示例。 一、基礎概念 在講解如何使用PHP foreach遍歷有相同屬性的值之前,我們需要先了解幾…

    編程 2025-04-28
  • Python源程序文件類型名用法介紹

    Python語言是現今最流行的編程語言之一,因其簡單易學、功能強大、可讀性好而廣泛應用於軟體開發、數據科學、人工智慧等領域。Python源程序文件類型名是指python程序文件以.…

    編程 2025-04-28
  • PHP獲取301跳轉後的地址

    本文將為大家介紹如何使用PHP獲取301跳轉後的地址。301重定向是什麼呢?當我們訪問一個網頁A,但是它已經被遷移到了另一個地址B,此時若伺服器端做了301重定向,那麼你的瀏覽器在…

    編程 2025-04-27
  • PHP登錄頁面代碼實現

    本文將從多個方面詳細闡述如何使用PHP編寫一個簡單的登錄頁面。 1. PHP登錄頁面基本架構 在PHP登錄頁面中,需要包含HTML表單,用戶在表單中輸入賬號密碼等信息,提交表單後服…

    編程 2025-04-27
  • PHP與Python的比較

    本文將會對PHP與Python進行比較和對比分析,包括語法特性、優缺點等方面。幫助讀者更好地理解和使用這兩種語言。 一、語法特性 PHP語法特性: <?php // 簡單的P…

    編程 2025-04-27
  • PHP版本管理工具phpenv詳解

    在PHP項目開發過程中,我們可能需要用到不同版本的PHP環境來試驗不同的功能或避免不同版本的兼容性問題。或者我們需要在同一台伺服器上同時運行多個不同版本的PHP語言。但是每次手動安…

    編程 2025-04-24
  • PHP數組去重詳解

    一、array_unique函數 array_unique是php中常用的數組去重函數,它基於值來判斷元素是否重複,具體使用方法如下: $array = array(‘a’, ‘b…

    編程 2025-04-24
  • PHP導出Excel文件

    一、PHP導出Excel文件列寬調整 當我們使用PHP導出Excel文件時,有時需要調整單元格的列寬。可以使用PHPExcel類庫中的setWidth方法來設置單元格的列寬。下面是…

    編程 2025-04-24

發表回復

登錄後才能評論