簡體   English   中英

檢索多個上載文件的文件擴展名(類上載,PHP)

[英]Retrieve filename extension for multiple uploaded files (Class Upload, PHP)

語言: PHP /使用Colin Verot 上傳類
關於: 多次上傳

下面的代碼已經可以正常上傳文件了,可以正常工作了...
問題:我在弄清楚如何獲取文件擴展名時遇到麻煩
(在下面的評論中,我指定了問題所在的位置...)

// CONNECTION TO DATABASE HERE...

// INCLUDE UPLOAD CLASS LIBRARY
include (dirname(__FILE__).'/lib/class.upload.php');

$files = array();
foreach ($_FILES['fileupload'] as $k => $l)
{
    foreach ($l as $i => $v)
    {
        if (!array_key_exists($i, $files))
        $files[$i] = array();
        $files[$i][$k] = $v;
        $imagename = $_FILES['fileupload']['name'];
    }
}

foreach ($files as $file) {

            // THIS IS MY PROBLEM AREA, GETTING FILE EXTENSION
            $ext=strchr($imagename,".");

            $generate_name = rand(100,99999); 
            $generate_name_extra = rand(200,9999);
            $filenamex = "PHOTO_".$generate_name.$generate_name_extra."_".time();
            $filenamex_thumb = $filenamex."_thumb";

            // COMPLETE FILENAME WITH EXTENSION
            $filename = $filenamex.strtolower($ext);
            $handle = new upload($file);
            if ($handle->uploaded) {
            ///// 1 ////////////////////////////////////////////////////////////////////
            $handle->file_new_name_body   = $filenamex_thumb;
            $handle->image_resize         = true;
            $handle->image_x              = '300';
            $handle->image_ratio_y        = true;
            $handle->jpeg_quality = '100';

            // ABSOLUTE PATH BELOW
            $handle->process($absoRoot.'covers/thumbs/');

            if ($handle->processed) {

            // SUCCESSFUL RESPONSE

        }
      else
        {

         // FAILED RESPONSE

        }     
    }
}

該網絡表單是:

<form method="post" action="upload.php" enctype="multipart/form-data">
<input name="fileupload[]" id="fileupload" type="file" multiple>

我確實非常需要文件擴展名才能在線正確地提供文件,但是我找不到在哪里找到它。 我試過使用: $files[$i][$k]而不是上面指定的問題區域中$imagename以及$file和其他可能的解決方案,但是我無法發現哪個人會給我文件名與擴展。

希望有人可以指出這一點。 感謝您的時間和協助!

$ext=array_pop(explode('.', $imagename));

您要查找的函數是pathinfo()

$pathdata = pathinfo($filename);
$extension = $pathdata['extension'];

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM