扫码关注官方订阅号
1、我在stack overflow上看到有人说利用md5来实现链接为http://stackoverflow.com/ques...。请各位告知我,如何实现的,3Q2、还有没有其他的方法能实现监控呢?
拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...
1.通过scandir()获取本目录下面所有的文件;2.foreach遍历文件,用md5file()保存文件md5值到其他目录的文件OR数据库(为什么不是数组等变量?因为变量在每次执行都会被清空);3.用cron或windows的计划任务执行,把之前的md5列表转换成数组,然后用array_diff()比较之前的md5列表与当前scandir()取到的md5文件列表,如果有返回结果,说明有文件被修改、删除或添加。
scandir()
foreach
md5file()
array_diff()
你可以试试目录的mtime和ctime
综合上面两位兄弟的说法,这个看你的需求,如果是做到实时的就用inofiy,如果是需要时确定类似于提交代码时的文件差异的话,就可以通过md5值等文件指纹的方式。
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
1.通过
scandir()获取本目录下面所有的文件;2.
foreach遍历文件,用md5file()保存文件md5值到其他目录的文件OR数据库(为什么不是数组等变量?因为变量在每次执行都会被清空);3.用cron或windows的计划任务执行,把之前的md5列表转换成数组,然后用
array_diff()比较之前的md5列表与当前scandir()取到的md5文件列表,如果有返回结果,说明有文件被修改、删除或添加。你可以试试目录的mtime和ctime
综合上面两位兄弟的说法,这个看你的需求,如果是做到实时的就用inofiy,如果是需要时确定类似于提交代码时的文件差异的话,就可以通过md5值等文件指纹的方式。