ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
[toc] 示例:php开发web在线管理器思路分析(主要是对目录和文件进行管理) ## :-: **需求**   微信广告平台创建朋友圈广告和公众号广告等每次都要切换,老板让开发个文件管理器,提前输入好,定时勾选发送(当然没做成,因为首先要模拟登录微信广告平台,爬微信的数据,在将文件管理器的数据插入到微信数据库中) 公共操作 ## :-: **公共操作(第1步-第5步)** - 如果是文件(显示6-10、16、17的操作) - 如果是目录(显示的是11-15操作) >[info]创建、重命名(前俩是名字)、修改(这个是内容)、都需要提供表单,让用户进行操作 1、查看目录:   通过递归遍历整个存文件的目录,显示出文件和子目录 2、新建文件:   判断是否存在同名文件、名字是否合法。不存在,则可使用touch()创建 3、新建目录:   判断是否存在同名目录、名字是否合法。不存在,则可使用mkdir()创建 4、上传文件   is_uploaded_file()是否是post上传,上传后改名 5、目录回退(回退其实就是跳转)   顶层目录不可回退,非顶层通过dirname()函数,js进行跳转 ## :-: **操作文件** 6、查看文件:   使用file_put_content()先读取,放到表单中,展示出来 7、修改文件内容:   判断文件后缀,是图片不能修改(因为图片是二进制,修改也没有意义,修改了图片就不能显示了)   使用file_put_content()先读取,放到表单中,展示出来,供用户输入,输入完提交,在用file_put_content()写入这个文件 8、重命名文件:   判断该是否存在同名文件、名字是否合法。不存在,则可使用rename()函数 9、删除文件:   判断该文件是否存在,存在则可使用unlink()删除 10、下载文件   通过设置header头,告诉浏览器,要下载附件 ## :-: **操作目录** 11、获取目录中的信息   如果是最后一层目录了,就提示用户,没有了。否则继续显示 12、复制目录   A目录复制到B目录   B目录存在直接复制,否则先创建B目录在复制。使用copy()函数将A目录下的所有文件和目录复制过去 13、重命名目录   新名称是否包含非法字符,使用rename()函数重命名 14、剪切目录   A目录复制到B目录   B目录存在直接剪切,否则先创建B目录在剪切。   判断B目录下是否有同名文件,有的话使用rename()函数改名后,在将A目录下的所有文件和目录copy()复制过去,删除A目录 15、删除目录   直接unlink()递归删除 16、复制文件   A文件复制到B目录下   判断B目录是否存在,B目录下是否有同名文件,都没有的话copy()函数   A文件复制到当前目录(和A文件在同级目录)下   提供个表单供用户输入,提交后,判断复制后的新名字是否和当前目录中有重名,有无非字符 17、剪切文件   A文件剪切到B目录下   判断B目录是否存在,B目录下是否有同名文件,都没有的话copy()函数后,在删除A文件   A文件剪切到当前目录(和A文件在同级目录)下   判断用户输入的是否是当前目录,当前目录下是否有同名文件,都没有的话copy()函数后,在删除A文件