首頁 > 後端開發 > php教程 > api - php 如何判断有PUT方式的文件上传?

api - php 如何判断有PUT方式的文件上传?

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
發布: 2016-06-06 20:20:19
原創
1437 人瀏覽過

这个上传是可选的,如果有,连同表单在内的其他字段一齐有PUT方式发送过来,那么怎么判断传过来的有没有上传文件文件呢?

我现在的解决办法是,读取PUT文件并入到一个临时文件里面,再用fiesize判断这个文件大小,如果为0的时候说明没有上传,但觉得这样做不稳妥,来请教一下。

<code>        $handle  = fopen('php://input', 'r');
        $fp = fopen($tmp_as, "w+");

        while ($data = fread($handle, 1024)) {
            fwrite($fp, $data);
        }
        fclose($fp);
        fclose($handle);
        
        
        if(filesize($tmp_as) && getimagesize($tmp_as)) {//文件是个图像,所以用了getimagesize函数
            echo '//TODO 有文件上传并处理';
        } else {
            echo '没有文件上传';
        }</code>
登入後複製
登入後複製

回复内容:

这个上传是可选的,如果有,连同表单在内的其他字段一齐有PUT方式发送过来,那么怎么判断传过来的有没有上传文件文件呢?

我现在的解决办法是,读取PUT文件并入到一个临时文件里面,再用fiesize判断这个文件大小,如果为0的时候说明没有上传,但觉得这样做不稳妥,来请教一下。

<code>        $handle  = fopen('php://input', 'r');
        $fp = fopen($tmp_as, "w+");

        while ($data = fread($handle, 1024)) {
            fwrite($fp, $data);
        }
        fclose($fp);
        fclose($handle);
        
        
        if(filesize($tmp_as) && getimagesize($tmp_as)) {//文件是个图像,所以用了getimagesize函数
            echo '//TODO 有文件上传并处理';
        } else {
            echo '没有文件上传';
        }</code>
登入後複製
登入後複製

表单提交后,打印$_FILES['myfile']看看,这个就是你上传的图片(tmp结尾的临时文件),需要移动文件,用move_uploaded_file函数

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
怎麼學好php
來自於 1970-01-01 08:00:00
0
0
0
PHP擴充intl
來自於 1970-01-01 08:00:00
0
0
0
php數據獲取?
來自於 1970-01-01 08:00:00
0
0
0
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板