我有一个日志文件 ( log.txt
),格式为:
=========================================
March 01 2050 13:05:00 log v.2.6
General Option: [default] log_options.xml
=========================================
Loaded options from xml file: '/the/path/of/log_options.xml'
printPDF started
PDF export
PDF file created:'/path/of/file.1.pdf'
postProcessingDocument started
INDD file removed:'/path/of/file.1.indd'
Error opening document: '/path/of/some/filesomething.indd':Error: file doesnt exist or no permissions
=========================================
March 01 2050 14:15:00 log v.2.6
General Option: [default] log_options.xml
=========================================
Loaded options from xml file: '/the/path/of/log_options.xml'
extendedprintPDF started
extendedprintPDF: Error: Unsaved documents have no full name: line xyz
注意:每个文件名的格式为:3lettersdatesomename_LO.pdf/indd。示例:MNM011112ThisFile_LO.pdf。此外,在给定的日期和时间,条目可能只有错误,只有关于创建的文件的消息或两者都有,就像我在这里展示的那样。
文件以这种方式继续。而且,我有一个表格形式的数据库:
id itemName status
1 file NULL
等等...
现在,我应该浏览日志文件,并且对于创建的每个文件,或者如果有错误,我应该使用适当的消息更新 DB 的最后一列:文件创建或错误。我想搜索字符串“PDF 文件已创建/错误”,然后获取文件名。
我已经尝试过各种各样的事情,比如pathinfo()
和strpos
。但是,我似乎无法理解我将如何完成它。
有人可以为我提供一些关于如何解决这个问题的意见吗?txt 文件和数据库非常庞大。
注意:我提供了日志文件的第二个条目,以明确错误出现的格式不一致。我想知道我是否仍然可以通过不一致的错误格式来实现我应该达到的目标。有人可以在再次阅读整个问题后提供帮助吗?与我第一次发布此内容相比,发生了很多变化。