发布网友 发布时间:2024-10-24 01:50
共4个回答
热心网友 时间:2024-10-25 19:52
如果想自己做, hashtable是一定的
建一个hashtable, 储存当前内容, 同时该hashtable的id也同样可以用于作为文件功能等记录的id之用, 然后无论是windows还是linux都可以cron的,去做一个php文件去匹配吧, 文件修改时间无所谓的, md5(file)更有意义
如果单纯使用php, 遍历目录是必须的, 无论哪个os都提供文件动作的监控能力,但是这不在php的工作范围内,所以无法实现所谓的监控,你可以看看同步类软件,无论哪个操作系统都是直接去os的基层拿现成的东西来用,不用特地耗费资源去自己不断遍历目录监控的,
svn/cvs是主动提交改动的, 而所谓监控,那就是被动形式了,只有在改动时才有动作的叫监控,
你要php实现源码监控,一句话,不可能,只能做递归/迭代, 用hashtable处理并不断操作hashdb
ps:文件功能你们都不写进注释吗,注释本来就有这种功能, 比如phpdoc-_
热心网友 时间:2024-10-25 19:49
SVN,CVS
热心网友 时间:2024-10-25 19:50
看修改时间? filemtime ?
热心网友 时间:2024-10-25 19:48
使用file_md5获得文件的MD5值,比较MD5可以判断文件是否被修改过.再加以辅助字段,如文件大小可以判断文件内容是否增加,相同size的,判断MD5,至少于删除的.数据库的文件列表与当前列表中不一致的.当前列表没有就是被删除的,用别的颜色显示,数据库中的列表中没有的,则是后来增加的.别的颜色表示(添加一个功能,使用新增文件可以添加到数据库文件列表中去.)
==================
我想大致能满足你的需求了.
其实还是用svn或cvs比较好.记录每个文件的功能可以写在文件的注释段中嘛.
另外把文件名规范一下,做到见名识义就行.何必搞这么复杂.
自已开发这样的一个系统并不好,我想用不了多久就会丢弃的.