php文件上传代码_PHP上传文件代码实例

PHP入门教程之上传文件实例详解

本文实例讲述了PHP上传文件的方法。分享给大家供大家参考,具体如下:

Demo1.php

上传文件:

Demo2.php

//接受上传文件

//$_FILES;

//存在,但是空值

//[userfile][name] 表示上传的文件名

//[userfile][type] 表示文件类型:例如,jpg 的文件类型为:image/jpeg

//[userfile][tmp_name]表示上传的文件临时存放的位置 C:\WINDOWS\temp\php28.tmp

//[userfile][error]表示错误类型,表示没有任何错误。

//[userfile][size]表示上传文件的大小

print_r($_FILES);

echo '
';

//is_uploaded_file -- 判断文件是否是通过 HTTP POST 上传的

//通过 HTTP POST 上传后,文件会存放在临时文件夹下

$fileMimes = array('image/jpeg','image/pjpeg','image/gif','image/png','image/x-png');

//判断类型是否是数组里的一种

if(is_array($fileMimes)){

if(!in_array($_FILES['userfile']['type'],$fileMimes)){

echo "";

exit;

}

}

//创建一个常量

define('URL',dirname(__FILE__).'\uploads');

echo URL;

//判断目录是否存在

if(!is_dir(URL)){

mkdir(URL,0777); //最大权限0777,意思是如果没有这个目录,那么就创建

}

define('MAX_SIZE',2000000);

if($_FILES['userfile']['size'] > MAX_SIZE){

echo "";

exit;

}

//还有两个问题要验证

//第二个问题,只允许 JPG 文件

// if($_FILES['userfile']['type'] != 'image/jpeg' && $_FILES['userfile']['type'] != 'image/pjpeg'){

// echo "";

// exit ;

// }

// switch ($_FILES['userfile']['type']){

// case 'image/jpeg'://火狐

// break;

// case 'image/pjpeg':

// break;

// case 'image/gif':

// break;

// case 'image/png'://火狐

// break;

// case 'image/x-png'://IE

// break;

// default: echo "";

// exit ;

// }

//第一个问题,如果上传错误,怎么办

if($_FILES['userfile']['error']>0){

switch ($_FILES['userfile']['error']){

case 1:echo "";

break;

case 2:echo "";

break;

case 3:echo "";

break;

case 4:echo "";

break;

}

exit;

}

if(is_uploaded_file($_FILES['userfile']['tmp_name'])){

//就在这里移动了

//move_uploaded_file -- 将上传的文件移动到新位置

//第一个参数,写上临时文件的地址,

//第二个参数,第二个参数要写上你要存在的地址

//先去判断这个目录是否存在

//如果想屏蔽掉警告,直接加上 @

if(!move_uploaded_file($_FILES['userfile']['tmp_name'],URL.'/'.$_FILES['userfile']['name'])){

//如果移动失败,就失败

echo '移动失败';

exit;

}

}else{

echo "";

exit;

}

//全部通过就上传成功了

//必须传一个值给Demo3.php

//文件上传的地址

echo "";

?>

Demo3.php

$url = $_GET['url'];

echo "%22.%24url.%22%5C%22";

?>

希望本文所述对大家PHP程序设计有所帮助。

以上就是本次给大家分享的关于java的全部知识点内容总结,大家还可以在下方相关文章里找到相关文章进一步学习,感谢大家的阅读和支持。

您可能感兴趣的文章:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值