教你使文件PHP上传生效
PHP经过长时间的发展,很多用户都很了解PHP了,这里我发表一下个人理解,和大家讨论讨论。PHP是一种用于创建动态WEB页面的服务端脚本语言。如同ASP 和ColdFusion,用户可以混合使用PHP和HTML编写WEB页面,当访问者浏览到该页面时,服务端会首先对页面中的PHP命令进行处理,然后把处理后的结果连同HTML内容一起传送到访问端的浏览器。
用户可以直接在WEB页面中输入PHP命令代码,因而不需要任何特殊的开发环境。在WEB页面中,所有PHP代码都被放置在“”中。此外,用户还可以选择使用诸如 等的形式。PHP引擎会自动识别并处理页面中所有位于PHP定界符之间的代码。
PHP脚本语言的语法结构与C语言和Perl语言的语法风格非常相似。用户在使用变量前不需要对变量进行声明。使用PHP创建数组的过程也非常简单。PHP还具有基本的面向对象组件功能,可以极大的方便用户有效组织和封装自己编写的代码。这里给大家介绍一下关于PHP上传的问题。
例子1. 使文件PHP上传生效
请查阅函数 is_uploaded_file() 和 move_uploaded_file() 以获取进一步的信息。以下范例处理由表单提供的文件上传。
- <?php
- // In PHP versions earlier than 4.1.0, $HTTP_POST_FILES should be used instead
- // of $_FILES.
- $uploaddir = /var/www/uploads/;
- $uploadfile = $uploaddir . basename($_FILES[userfile][name]);
- echo <pre>;
- if (move_uploaded_file($_FILES[userfile][tmp_name], $uploadfile)) {
- echo File is valid, and was successfully uploaded.n;
- } else {
- echo Possible file upload attack!n;
- }
- echo Here is some more debugging info:;
- print_r($_FILES);
- print </pre>;
- ?>
接受PHP上传文件的脚本为了决定接下来要对该文件进行哪些操作,应该实现任何逻辑上必要的检查。例如可以用 $_FILES[userfile][size] 变量来排除过大或过小的文件,也可以通过 $_FILES[userfile][type] 变量来排除文件类型和某种标准不相符合的文件,但只把这个当作一系列检查中的第一步,因为此值完全由客户端控制而在 PHP 端并不检查。自 PHP 4.2.0 起,还可以通过 $_FILES[userfile][error] 变量来根据不同的错误代码来计划下一步如何处理。不管怎样,要么将该文件从临时目录中删除,要么将其移动到其它的地方。
如果表单中没有选择上传的文件,则 PHP 变量 $_FILES[userfile][size] 的值将为 0,$_FILES[userfile][tmp_name] 将为空。如果该文件没有被移动到其它地方也没有被改名,则该文件将在表单请求结束时被删除。
文章地址:http://www.phprm.com/frame/php1003406.html
转载随意^^请带上本文地址!
- 上一篇: 新手指南何为PHP语言
- 下一篇: 两种PHP上传文件大小限制解决方案