PHP高级编程.docx
上传人:qw****27 上传时间:2024-09-12 格式:DOCX 页数:6 大小:25KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

PHP高级编程.docx

PHP高级编程.docx

预览

在线预览结束,喜欢就下载吧,查找使用更方便

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

PHP高级编程★上传文件HTML的设计:<formenctype="multipart/form-data"action="upload.php"method=post><inputtype="hidden"name="MAX_FILE_SIZE"value="1000000">上传文件名称:<inputname="userfile"type="file"><inputname="提交"type="submit"value="提交"></form>要使用form表单,enctype必须为"multipart/form-data",否则脚本将不会工作;表单方法是POST需要一个隐藏的表单域,用来标记文件最大字节数一个文件域,用来选择文件在PHP脚本中,需要处理的文件保存在$_FILES全局数组中,其中:$_FILES['userfile']['name']-Theoriginalnameofthefileontheclientmachine.$_FILES['userfile']['type']-Themimetypeofthefile,ifthebrowserprovidedthisinformation.Anexamplewouldbe"image/gif".ThismimetypeishowevernotcheckedonthePHPsideandthereforedon'ttakeitsvalueforgranted.$_FILES['userfile']['size']-Thesize,inbytes,oftheuploadedfile.$_FILES['userfile']['tmp_name']-Thetemporaryfilenameofthefileinwhichtheuploadedfilewasstoredontheserver.$_FILES['userfile']['error']-Theerrorcodeassociatedwiththisfileupload.ThiselementwasaddedinPHP4.2.0上传文件的安全性要保证用户上传的是本地文件,这样可以确保安全性(假如用户修改脚本上传存储在服务器的密码文件也是可以的)is_uploaded_file($_FILES['userfile']['tmp_name'])//若为上传的文件则返回True$upfile='/uploads/'.$_FILES['userfile']['name'];move_uploaded_file($_FILES['userfile']['tmp_name'],$upfile)//若为上传的文件则将文件移动到指定的位置使用is_uploaded_file()函数可以检测是否是上传文件,必须要传递上传文件名作为参数。move_uploaded_file也检查是否为上传文件,若是上传文件,则将此文件移动到指定的位置为安全起见,若上传的是Text文件,亦可用strip_tags()函数来移除所有HTML代码(以防止在服务端执行恶意操作)//reformatthefilecontents$fp=fopen($upfile,'r');$contents=fread($fp,filesize($upfile));fclose($fp);$contents=strip_tags($contents);$fp=fopen($upfile,'w');fwrite($fp,$contents);fclose($fp);上传文件注意事项若是Windows系统,则要在路径中用"\\"或者"/"来代替"\"。上传的文件若与已经存在的文件名相同,则会覆盖原文件。需要检查文件名中是是否包含非法字符。上传超大文件需要重新配置Apache服务器,同时还需要调节memory_limit指令等。★使用目录函数$current_dir='E:/PHP/';$dir=opendir($current_dir);echo"<p>Uploaddirectoryis$current_dir</p>";echo'<p>DirectoryListing:</p><ul>';while($file=readdir($dir)){echo"<li>$file</li>";}echo'</ul>';closedir($dir);opendir()-打开目录readdir()-读取目录读取目录后并未按特定顺序排列。若要文件排序则要先读取到数组中,再对数组进行排列。closedir()-关闭目录rewinddir()-将所读