返回

yii采用原始php文件上传方法上传文件

发布时间:2022-10-08 13:42:09 318
# php

1. 编写view

在view的index.php 代码如下:注意action是接受文件上传的action

<form action="api/uploadimg" method="post" enctype="multipart/form-data">

<label for="file">Filename:label>

<input type="file" name="file" id="file" />

<br />

<input type="submit" name="submit" value="Submit" />

form>

 在Controller的action方法如下:

public function actionUploadimg()

{

$isSuc = false;

$root = YiiBase::getPathOfAlias('webroot').Yii::app()->getBaseUrl();

$folder = $root.'/images/images/users/4/';

$desFilePath;

$tmpFilePath;

$this->mkDirIfNotExist($folder);

if ((($_FILES["file"]["type"] == "image/gif")

|| ($_FILES["file"]["type"] == "image/jpeg")

|| ($_FILES["file"]["type"] == "image/png")

|| ($_FILES["file"]["type"] == "image/jpg")

|| ($_FILES["file"]["type"] == "image/pjpeg")))

//&& ($_FILES["file"]["size"] < 20000))
{

if ($_FILES["file"]["error"] > 0)

{

$isSuc = false;

}

else

{

echo "Upload: " . $_FILES["file"]["name"] . "<br />";

echo "Type: " . $_FILES["file"]["type"] . "<br />";

echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";

echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";

$tmpFilePath = $_FILES["file"]["tmp_name"];

$desFilePath = $folder.$_FILES["file"]["name"];


if (file_exists($desFilePath))

{

unlink($desFilePath);

//echo $_FILES["file"]["name"] . " already exists. ";
}

else

{

move_uploaded_file($tmpFilePath, $desFilePath);

$isSuc = true;

}

}

}

else

{

echo "Invalid file";

}


}


function mkDirIfNotExist($dir)

{


if(!is_dir($dir))

{

if(!mkdir($dir, 0, true))

{

throw new Exception('create folder fail');

//return false;
}

else

{

return true;

}

}

return false;

}

参考 ​​http://www.w3school.com.cn/php/php_file_upload.asp​​

特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像
精选文章
thumb 中国研究员首次曝光美国国安局顶级后门—“方程式组织”
thumb 俄乌线上战争,网络攻击弥漫着数字硝烟
thumb 从网络安全角度了解俄罗斯入侵乌克兰的相关事件时间线
下一篇
php 日历源码 2022-10-08 13:27:22