项目内容
mkdir(目录地址和名字,权限);
mkdir(目录地址和名字,权限,是否支持递归创建);
删除:remove
使用函数:
rmdir(目录地址)
修改目录(移动目录)
使用函数:
rename(原始文件路径和名称, 新的文件路径和名称);
获取目录内容
1,打开目录,opendir,得到一个目录句柄(目录资源,打开PHP和文件进行数据交互的通道)
2,依次读取目录内的文件,readdir
注意:每使用readdir一次,内部的资源指针主动下移!
getCWD
get current work directory
作用:
获取当前的工作路径!
getcwd和__DIR__是有区别的!
__DIR__的值是在脚本的预编译阶段已经确定好了,在执行的时候不会发生任何的改变!
但是我们却可以改变当前的工作路径!
chdir
这里的ch就是charge的意思,该函数的作用是改变当前的工作路径!
rewinddir
作用是重置目录资源指针(类比一下数组中的reset函数)
scandir
scan是浏览(扫描)的意思,该函数的作用就是返回一个索引数组,保存的是当前目录下的所有的文件和文件夹的名字!
注意:
需要一个参数,该参数是一个目录的路径,而不是一个目录的资源!
filtype
返回一个文件的类型,只需一个参数,就是文件的路径
例如:返回dir file
file_exists
判断一个文件是否存在,参数也是一个文件的地址,返回一个布尔值!
is_dir
判断一个文件是否是一个dir型的文件,也就是我们平时所说的目录或文件夹
is_file
判断一个文件是否是一个file型的文件
file_get_contents
这个函数需要一个文件路径的参数,作用就是将整个文件内的所有的内容全部读取出来,并以字符串的形式返回
file_put_contents
该函数有一个返回值是写入数据的长度
1,如果要写入的文件不存在,系统会自动的创建,但是如果该文件所在的目录不存在,不会自动创建目录!
2,该函数默认的是覆盖写,也就是先清空原文件的内容,然后再写入!
打开文件
fopen
参数一:文件地址(也就是哪个哪个文件)
参数二:打开的方式(模式),也就是说以什么样的方式打开,不同的打开方式可以实现不同的操作!
r(read):只读模式,也就是只能读,不能写!
w(write):替换写模式,将文件的指针放在文件的开头,先将内容清空,也可以自动创建不存在的文件
a(append):追加写模式
x:替换写模式,和w的区别是不会自动创建不存在的文件吗,只能打开已经存在的文件,有时候我们需要避免创建一些不存在的文件
r+ : 读+写模式,将文件的指针放在文件的开头!
w+ :读+替换写模式,也是将文件的指针放在文件的开头,也可以自动创建不存在的文件
a+ :读+追加写,其中,写的时候指针永久是在文件的末尾
x+ : 读+替换写,同样也不会自动创建不存在的文件
fread
需要两个参数:
fread(文件句柄,长度);
fgets
语法形式:
fgets(文件句柄,长度)
注意:
1,这里的长度也是字节数,但是只能读取长度-1个字节!
2,从文件的指针的位置开始读取,而不是从头开始读!
最多读一行!(也是与fread的最大区别!)
fgetc
读取函数,但是只能一次只能读取一个字节的数据
fwrite
需要两个参数:
1,文件句柄
2,写入内容
注意:打开文件句柄的时候需要时使用能够写入文件的打开模式!
该函数也有一个返回值,也是写入文件的长度(字节的长度)
特别注意:
这里的替换写是指在不同的脚本之间执行的时候,先清空原有的数据,而在同一个脚本中(在同一个文件句柄中),多次写入,不会替换!
fclose
作用就是:关闭一个文件句柄!
copy
复制文件,保留源文件(类比rename)
需要两个参数:
第一个是被复制的文件的路径(从哪复制)
第二个是复制后的文件的路径(复制到哪)
unlink
删除一个文件,只需要一个参数,就是该文件的路径!
filemtime
这里的m就是modify,返回的是文件最后被修改的时间!得到一个时间戳!
filesize
返回文件的大小(字节)!
验证码
创建画布有两个函数
imgcreate(width,height);
imagecreatetruecolor(width,height);
作用:创建真彩色画布
为画布创建一种颜色
imagecolorallocate(img,red,green,blue);
img是一个画布资源,后面的rgb代表一个颜色
绘制文件
imagestring(img,size,x,y,color);
其中:
img代表画布资源
size;文字的大小,这里只能是1~5
string:文字内容
color:颜色句柄
输出图片
此时,我们需要使用函数:
imagepng
imagejpeg
imagegif
填充背景
imgagefill(img,x,y,color);
添加干扰线
imageline(img,x,y,x1,y1,color);
添加噪点
imagesetpixel(img,x,y,color);