php文件上传会用到很多内置函数
1.获取文件后缀名时
substr(strrchr($filename, '.'), 1)
string strrchr(string,char)取得某字符最后出现处起的字符串.
eg:
<?php
$extendName = strrchr( $filename, "." );
echo "后缀名: ".$extendName;
?>
string substr(string str,int start,int length)
将字符串 str的第 start 位起的字符串取出 length 个字符。若 start 为负数,则从字符串尾端算起。若可省略的参数 length 存在,但为负数,则表示取到倒数第 length 个字符。
eg:
<?
echo substr("abcdef", 1, 3); // 返回 "bcd"
echo substr("abcdef", -2); // 返回 "ef"
echo substr("abcdef", -3, 1); // 返回 "d"
echo substr("abcdef", 1, -1); // 返回 "bcde"
?>
2.获取上传文件信息
$_FILES["UploadFile"]["name"] 上传文件的名称
$_FILES["UploadFile"]["type"] 上传文件的类型
$_FILES["UploadFile"]["size"] 上传文件的大小,以字节计
$_FILES["UploadFile"]["tmp_name"] 存储在服务器的文件的临时副本的名称
$_FILES["UploadFile"]["error"] 由文件上传导致的错误代码
"UploadFile" 是input的name名, "name","type","size"等都是特定参数不可变更
3.分隔字符串
array explode ( separator, string,limit )limit可选
此函数返回由字符串组成的数组,每个元素都是 string 的一个子串,它们被字符串 separator 作为边界点分割出来
eg:
<?
$pizza = "Hello world.";
$pieces = explode(" ", $pizza);
echo $pieces[0];//Hello
echo $pieces[1];//world.
?>
4.组合字符串
string implode(string glue, array pieces);
将数组的内容组合成一个字符串,参数 glue 是字之间的分隔符号
eg:
<?
$glue = array("php","java","c#","asp");
$pieces = implode(";", $glue);
echo $pieces;//php;java;c#;asp
?>
5.复制文件
copy(string source, string dest);
<?
if (!copy($file, $file.'.bak')) {
print("复制文件 $file 失败...<br>/n");
}
?>
6.移动文件
move_uploaded_file(file,newloc)
将上传的文件移动到新位置,file规定要移动的文件,newloc文件的新位置。
以下是上传文件代码:(upload.php)