今天继续记录日常学习PHP第8天的过程!
昨天没做记录,没更新;感觉快到入门到放弃的阶段了,遇到很多问题,我大体上主要分为了两种;第一种:由于版本或者运行环境的问题,有些系统函数根本都不能使用,第二种:测试过程中基础不牢,有很多小问题导致报错,从实操功能来学习php,有点欲速则不达的感觉;所以不得不需要大量的练习才能让基础更牢;
当然,也有好的一面,从最开始基本格式都不熟悉,比如echo老是不知道写不出来,末尾的分号忘记写,到现在基本上不会忘记,小的功能我自己会举一反三的去实现;
今天依然持续记录,可能后面会更缓慢;特别是讲对象原理,我看了1遍,整个是蒙的,不知道是用来干嘛的;
今天记录,上传原理:

<?php
$time=microtime(true) * 10000;//这是个用时间微妙数作为文件上传后的文件名,避免上传上去的文件不在同一个目录里面重复文件名
if(is_uploaded_file($_FILES['upfile']['tmp_name'])){ //判断是否点击了上传
$upfile=$_FILES["upfile"]; //把文件分解成不同的组合,
$name=$upfile["name"];//上传的文件名
$type=$upfile["type"];//上传的文件类型
$size=$upfile["size"];//上传的尺寸
$tmp_name=$upfile["tmp_name"];//上传的零时文件名
$error=$upfile["error"];//上传的过程的错误提示
$path=".". pathinfo($name, PATHINFO_EXTENSION);//获取文件的后缀名 .jpg
switch($type){ //判断上传的文件是否是以下格式
case 'image/pjpeg' : $ok=1;
break;
case 'image/jpeg' : $ok=1;
break;
case 'image/gif' : $ok=1;
break;
case 'image/png' : $ok=1;
break;
default:
echo "上传格式不合格";
}
if($ok){//如果是以上格式,则执行上传
move_uploaded_file($tmp_name,'up/'.$time.$path);//移动文件到UP文件储存
echo "上传成功";
}
}
?>
我的学习方式是,先把代码测试成功,再逐一的解读每一句的含义;
所以,这个上传的大概原理是,把上传的文件,先做解剖,胳膊是胳膊、腿是腿;需要哪一个就用哪一个,然后重新按照我们的需求组装起来,不需要则就丢掉;
在这个过程最大的阻碍 就是不理解各个系统函数,比如move_uploaded_file()、$_FILES();只能先了解他的作用后,然后背到,以后要用到这样的功能了,第一时间就要想起它;