我想知道如何讓PHP檢查它有什麼擴展,然後執行代碼。例如,讓我們看看它是一個.mp3文件,然後執行:echo'這是一個mp3文件'。當然不是那個代碼 - 但更先進。無論如何,有什麼想法等?用PHP檢查文件擴展名
回答
有多種方法可以做到這一點。如果你所做的只是檢查mp3,只是爆炸的時間段,彈出最後一個,然後看看字符串是否相等。
例如:
$name = "song.mp3";
$parts = explode('.', $name);
$extension = array_pop($parts);
if($extension == 'mp3'){
echo 'This is a mp3 file.';
}
如果你檢查各種各樣的擴展,他們被上傳使用
$_FILES['file']['type'];
當文件名包含一個點時,這將不起作用。就像這個文件名一樣,它會失敗「my.test.txt」 –
是的,它會導致你刪除最後一個擴展元素array_pop。我試了一下,它的工作,但試試看,如果我錯了,讓我知道。 – Phil
使用pathinfo() function到文件的擴展名分離,然後使用if語句中的值。
如果文件正在上傳,這項工作是否可行?由於上傳文件沒有擴展名(我通常看起來像這樣tmp_name =>/tmp/php8Nxotq)。 – Phil
謝謝。現在幾乎已經有了。 我該怎麼做這樣pathinfo(PHP)會檢查一個目錄? – user1622951
'echo「{mp3:\」music/$ file_name \「,ogg:\」musicogg/$ path_parts \「.ogg}」;' 其中$ file_name正在查看音樂目錄(並且完全按照它的工作原理),現在我想要它從音樂目錄中獲得的名稱,並將代碼的最後部分放在一個.ogg擴展名中。或者它將查看musicogg目錄並檢查文件是否存在。有點失落了。 – user1622951
您可以使用filetype()
或$_FILES[$file][type]
來獲得文件類型 。
檢查這兩個選項來做到這一點:
$filename = 'music.mp3'
$ext = substr(strrchr($filename, '.'), 1);
或
$filename = 'music.mp3';
$ext = pathinfo($filename, PATHINFO_EXTENSION);
希望它能幫助:)
試試這個
$file_name = "test.txt";
$extension = pathinfo($file_name);
echo "Your file extension is ".$extension ['extension'];
如果要正確檢測文件的類型,使用Fileinfo。
例撕開了PHP的評論:
<?php
$fi = new finfo(FILEINFO_MIME,'/usr/share/file/magic');
$mime_type = $fi->buffer(file_get_contents($file));
- 1. php檢查文件擴展名爲
- 2. PHP檢查文件擴展名
- 3. Android - 檢查文件擴展名是.mp4
- 4. ssh.net檢查文件擴展名
- 5. 檢查文件擴展名在android中
- 6. 文件擴展名的多重檢查
- 7. 檢查有效的文件擴展名
- 8. 在Formview中檢查文件擴展名
- 9. 檢查的文件擴展名
- 10. python argparse文件擴展名檢查
- 11. 使用PHP在上傳表格中檢查文件擴展名
- 12. php文件擴展名
- 13. mod_rewrite文件檢查擴展
- 14. 在提交表格之前檢查文件擴展名php
- 15. PHP上傳多個圖像,並檢查其文件擴展名
- 16. 檢查文件MIME類型匹配它的擴展名在PHP
- 17. Python:檢查文件名以擴展名列表中的擴展名結尾
- 18. PHP查找擴展沒有擴展名
- 19. 用php找到文件的擴展名
- 20. 使用PHP更改文件擴展名
- 21. PHP文件名和擴展名恢復
- 22. PHP:圖像檢查擴展
- 23. 將.do擴展名用作所有php文件的.php擴展名
- 24. 檢查多個文件的文件擴展名
- 25. 如何在IsolatedStorage中檢查文件的文件擴展名?
- 26. 文件上傳不上傳文件擴展名檢查
- 27. 如何檢查文件是否存在文件擴展名? C#
- 28. PHP - 識別附件文件擴展名
- 29. 檢查沒有擴展名的文件名是否存在
- 30. 使用正則表達式檢查文件擴展名
你真的想要的文件擴展名?還是內容類型? – Brad