php $_FILES主要用于处理文件上传,其作用是存储各种与上传文件有关的信息,而这些信息对于通过PHP脚本上传到服务器的文件至关重要。
php $_FILES处理文件上传
众所周知,文件上传在一些网站应用中是必不可少的一部分。比如个人博客上传个性头像,一些论坛分享好的学习资料等,这就涉及到使用表单处理文件上传的知识,在php中 我们可以使用$_FILES
这个全局数组来处理。
下面就看看基本的文件上传处理部分。首先要说明的,能够上传文件必定是一个安全隐患,所以在开发这部分功 能时,一定要注意网站的安全性。
而本文所探讨的只是基本的文件上传部分,关于安全性这方面考虑的较少,希望在日后的高级应用中可以学习的到。
在PHP预定义变量这一节我们对一些预定义变量进行了一些大概的学习,其中就有$_FILES这个全局变量,那么现在再来详细的了解关于这个全局量的知识,因为我在处理文件上传时,要使用到它的相关功能。
$_FILES参数详解:
$_FILES["file"]["name"] – 被上传文件的名称
$_FILES["file"]["type"] – 被上传文件的类型
$_FILES["file"]["size"] – 被上传文件的大小,以字节计
$_FILES["file"]["tmp_name"] – 存储在服务器的文件的临时副本的名称
$_FILES["file"]["error"] – 由文件上传导致的错误代码
$_FILES["file"]["error"]中的["error"]值情况:
UPLOAD_ERR_OK
0:没有错误发生,文件上传成功UPLOAD_ERR_INI_SIZE
1:上传的文件超过了 php.ini中upload_max_filesize(默认情况为2M) 选项限制的值UPLOAD_ERR_FORM_SIZE
2:上传文件的大小超过了 HTML表单中MAX_FILE_SIZE选项指定的值UPLOAD_ERR_PARTIAL
3:文件只有部分被上传UPLOAD_ERR_NO_FILE
4:没有文件被上传
5:传文件大小为0
下面我们就来看看最基本的文件上传:
<html> <body> <form action=”upload-file.php” method=”post” enctype=”multipart/form-data”> <label for=”file”>文件名:</label> <input type=”file” name=”file” id=”file” /> <br /> <input type=”submit” name=”submit” value=”提交” /> </form> </body> </html>
upload-file.php代码如下:
<?php if ($_FILES["file"]["error"] > 0) { echo “错误: ” . $_FILES["file"]["error"] . “<br />”; } else { echo “文件名: ” . $_FILES["file"]["name"] . “<br />”; echo “类型: ” . $_FILES["file"]["type"] . “<br />”; echo “大小: ” . ($_FILES["file"]["size"] / 1024) . ” Kb<br />”; echo “存储位置: ” . $_FILES["file"]["tmp_name"]; } ?>
我们随便上传一个word文件,看看处理结果如何:
文件名: css.doc 类型: application/msword 大小: 81.5 Kb 存储位置: C:\WINDOWS\temp\php7D.tmp
可以看到,这个文件被保存到C:\WINDOWS\temp\临时目录下,你可能想去看看在这个目录是否存在这个文件,但结果是:没有!为什么呢? 因为php在执行完这个脚本后,把它生成的文件又删除了,所以在上传之后还要进一步处理。另外还随便提一下,在windows下,php所生成的临时文件 如php7D.tmp是有规律的,也就是说在下一次通过表单上传的文件应该像这样:php7E.tmp
为了保存我们上传的文件,要使用move_uploaded_file函数。在你的upload-file.php文件同目录创建一个upload文件夹。下面再来看看上面那个示例:
<?php if ($_FILES["file"]["error"] > 0) { echo “错误: ” . $_FILES["file"]["error"] . “<br />”; } else { echo “文件名: ” . $_FILES["file"]["name"] . “<br />”; echo “类型: ” . $_FILES["file"]["type"] . “<br />”; echo “大小: ” . ($_FILES["file"]["size"] / 1024) . ” Kb<br />”; } if (file_exists(”upload/” . $_FILES["file"]["name"])) { echo $_FILES["file"]["name"] . ” 文件已经存在. “; } else { move_uploaded_file($_FILES["file"]["tmp_name"], “upload/” . $_FILES["file"]["name"]); echo “文件已经被存储到: ” . “upload/” . $_FILES["file"]["name"]; } ?>
再来看看结果:
文件名: css.doc 类型: application/msword 大小: 81.5 Kb 文件已经被存储到: upload/css.doc
经过这一步的处理,在我们所指定的地方(upload)就可以得到我们上传的文件。到这里,最基本的文件上传就结束了。
更多相关知识,请访问 PHP中文网!!

php把负数转为正整数的方法:1、使用abs()函数将负数转为正数,使用intval()函数对正数取整,转为正整数,语法“intval(abs($number))”;2、利用“~”位运算符将负数取反加一,语法“~$number + 1”。

实现方法:1、使用“sleep(延迟秒数)”语句,可延迟执行函数若干秒;2、使用“time_nanosleep(延迟秒数,延迟纳秒数)”语句,可延迟执行函数若干秒和纳秒;3、使用“time_sleep_until(time()+7)”语句。

php除以100保留两位小数的方法:1、利用“/”运算符进行除法运算,语法“数值 / 100”;2、使用“number_format(除法结果, 2)”或“sprintf("%.2f",除法结果)”语句进行四舍五入的处理值,并保留两位小数。

判断方法:1、使用“strtotime("年-月-日")”语句将给定的年月日转换为时间戳格式;2、用“date("z",时间戳)+1”语句计算指定时间戳是一年的第几天。date()返回的天数是从0开始计算的,因此真实天数需要在此基础上加1。

php字符串有下标。在PHP中,下标不仅可以应用于数组和对象,还可应用于字符串,利用字符串的下标和中括号“[]”可以访问指定索引位置的字符,并对该字符进行读写,语法“字符串名[下标值]”;字符串的下标值(索引值)只能是整数类型,起始值为0。

方法:1、用“str_replace(" ","其他字符",$str)”语句,可将nbsp符替换为其他字符;2、用“preg_replace("/(\s|\ \;||\xc2\xa0)/","其他字符",$str)”语句。

php判断有没有小数点的方法:1、使用“strpos(数字字符串,'.')”语法,如果返回小数点在字符串中第一次出现的位置,则有小数点;2、使用“strrpos(数字字符串,'.')”语句,如果返回小数点在字符串中最后一次出现的位置,则有。

在php中,可以使用substr()函数来读取字符串后几个字符,只需要将该函数的第二个参数设置为负值,第三个参数省略即可;语法为“substr(字符串,-n)”,表示读取从字符串结尾处向前数第n个字符开始,直到字符串结尾的全部字符。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

适用于 Eclipse 的 SAP NetWeaver 服务器适配器
将Eclipse与SAP NetWeaver应用服务器集成。

Dreamweaver Mac版
视觉化网页开发工具

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境

Atom编辑器mac版下载
最流行的的开源编辑器

SublimeText3 Linux新版
SublimeText3 Linux最新版