php上传文件,创建递归目录的实例代码


Posted in PHP onOctober 18, 2013
<?php
$uid=$_REQUEST['uid'];
$avatar = 'D:/avic/discuz/uc_server/data/avatar/'.get_avatar($uid, $size, $type);
$dir=dirname($avatar);
//创建目录成功后移动临时文件
if(mkdirs($dir)){

if($_FILES["pic"]["error"] >= 0){


if(move_uploaded_file($_FILES['pic']['tmp_name'],$avatar)){



$errorcode=1;


}else{



$errorcode=0;



$errormsg="文件移动失败";


}

}else{


$errorcode=0;


$errormsg=$_FILES['pic']['error'];

}
}
$back=array("errorcode"=>$errorcode,'errormsg'=>$errormsg);
echo json_encode($back);
//返回图片要存储的路径
function get_avatar($uid, $size = 'middle', $type = '') {

$size = in_array($size, array('big', 'middle', 'small')) ? $size : 'middle';

$uid = abs(intval($uid));

$uid = sprintf("%09d", $uid);

$dir1 = substr($uid, 0, 3);

$dir2 = substr($uid, 3, 2);

$dir3 = substr($uid, 5, 2);

$typeadd = $type == 'real' ? '_real' : '';

return $dir1.'/'.$dir2.'/'.$dir3.'/'.substr($uid, -2).$typeadd."_avatar_$size.jpg";
}
//递归创建目录,若传的$dir不是绝对路径,则会和运行此方法的目录同级
function mkdirs($dir){

if(!is_dir($dir)){


if(!mkdirs(dirname($dir))){



return false;


}

 if(!mkdir($dir,0777)){



return false;


}

 }
return true;
}
?>
PHP 相关文章推荐
php简单封装了一些常用JS操作
Feb 25 PHP
不错的PHP学习之php4与php5之间会穿梭一点点感悟
May 03 PHP
php+mysql事务rollback&amp;commit示例
Feb 08 PHP
php数字转汉字代码(算法)
Oct 08 PHP
浅谈discuz密码加密的方式
May 22 PHP
php获取CSS文件中图片地址并下载到本地的方法
Dec 02 PHP
PHP版微信公众平台红包API
Apr 02 PHP
ThinkPHP表单数据智能写入create方法实例分析
Sep 27 PHP
详谈php静态方法及普通方法的区别
Oct 04 PHP
JSON PHP中,Json字符串反序列化成对象/数组的方法
May 31 PHP
PHP PDOStatement::getAttribute讲解
Feb 01 PHP
Thinkphp 在api开发中异常返回依然是html的解决方式
Oct 16 PHP
php用户注册页面利用js进行表单验证具体实例
Oct 17 #PHP
10 个经典PHP函数
Oct 17 #PHP
php中怎么搜索相关联数组键值及获取之
Oct 17 #PHP
php class类的用法详细总结
Oct 17 #PHP
div li的多行多列 无刷新分页示例代码
Oct 16 #PHP
无刷新动态加载数据 滚动条加载适合评论等页面
Oct 16 #PHP
PHP字符串长度计算 - strlen()函数使用介绍
Oct 15 #PHP
You might like
网站当前的在线人数
2006/10/09 PHP
PHP 分页原理分析,大家可以看看
2009/12/21 PHP
phpmyadmin下载、安装、配置教程
2017/05/16 PHP
详解PHP变量传值赋值和引用赋值变量销毁
2019/03/23 PHP
通过jQuery打造支持汉字,拼音,英文快速定位查询的超级select插件
2010/06/18 Javascript
JS实现简单的Canvas画图实例
2013/07/04 Javascript
js根据日期判断星座的示例代码
2014/01/23 Javascript
JQuery动画animate的stop方法使用详解
2014/05/09 Javascript
抛弃Nginx使用nodejs做反向代理服务器
2014/07/17 NodeJs
IE下使用jQuery重置iframe地址时内存泄露问题解决办法
2015/02/05 Javascript
Bootstrap中的Panel和Table全面解析
2016/06/13 Javascript
关于 jQuery Easyui异步加载tree的问题解析
2016/12/06 Javascript
正则验证小数点后面只能有两位数的方法
2017/02/28 Javascript
JavaScript实现重力下落与弹性效果的方法分析
2017/12/20 Javascript
详解如何写出一个利于扩展的vue路由配置
2019/05/16 Javascript
解决layui 表单元素radio不显示渲染的问题
2019/09/04 Javascript
Vue+element-ui添加自定义右键菜单的方法示例
2020/12/08 Vue.js
js加减乘除精确运算方法实例代码
2021/01/17 Javascript
[02:58]魔廷新尊——痛苦女王至宝语音台词节选
2020/06/14 DOTA
python自动安装pip
2014/04/24 Python
python获取标准北京时间的方法
2015/03/24 Python
python批量识别图片指定区域文字内容
2019/04/30 Python
Python Pandas分组聚合的实现方法
2019/07/02 Python
Pandas的read_csv函数参数分析详解
2019/07/02 Python
numpy 声明空数组详解
2019/12/05 Python
python制作微博图片爬取工具
2021/01/16 Python
CSS3 Flexbox中flex-shrink属性的用法示例介绍
2013/12/30 HTML / CSS
纯CSS实现颜色渐变效果(包含环形渐变、线性渐变、彩虹效果等)
2014/05/07 HTML / CSS
实例教程 利用html5和css3打造一款创意404页面
2014/10/20 HTML / CSS
酒店管理专业学生求职信
2013/09/27 职场文书
家长给孩子的评语
2014/01/30 职场文书
幼儿园教师师德师风演讲稿:我自豪我是一名幼师
2014/09/10 职场文书
单位介绍信格式
2015/01/31 职场文书
暑期实践个人总结
2015/03/06 职场文书
交通事故代理词范文
2015/05/23 职场文书
七一活动主持词
2015/06/29 职场文书