禁止thinkphp编译实施的日志
程序员文章站
2022-06-13 10:04:20
...
禁止thinkphp编译执行的日志
从周一开始认真研究thinkphp,并打算在基于thinkphp框架的博客系统thinksns中禁止tp的编译执行,以便调试代码。通常禁不禁只要在配置文件中修改,但找了下,没发现与config相关的文件,于是决定手动修改代码。
首先从入口文件开始,逐步深入到核心文件,编译机制一般是把各个需要用到的核心文件放入一个文件中,减少io消耗。 于是把注意力集中到compile这个函数中,将所有的compile注释掉之后,还是有编译执行,于是走上漫漫调试路,中途有一些bug修改,又犹豫着是否要这样调试,一直到今天周四,又将注意力集中到file_put_contents函数中,因为这才是编译中最核心的函数,找到所有带有这函数的文件,终于改了过来。
经此折腾,本来成就感挺高的。突然让我看见一个叫convention的文件,进去一看,是tp的惯例配置文件,里面有一个就有个是否编译的按钮,一试,正是我想要的结果,我个悲催的哇。
总结经验:
1,粗心了,如果选择某种思路,只要中途没有意识到明显的错误,就彻底的执行下去,不要中途又改变思路,也许机会就出现在下一刻
2 ,抓住最核心的函数,并发挥全文查找的功能,一步步排除
3, 一般成名的框架,不会写的很乱,多注意配置文件,配置文件不一定只有一个,从这次可以看出,平台的config文件定义的选项太少,比如调试,cookie等选项都没有,因此应该会有其他的默认配置。
从周一开始认真研究thinkphp,并打算在基于thinkphp框架的博客系统thinksns中禁止tp的编译执行,以便调试代码。通常禁不禁只要在配置文件中修改,但找了下,没发现与config相关的文件,于是决定手动修改代码。
首先从入口文件开始,逐步深入到核心文件,编译机制一般是把各个需要用到的核心文件放入一个文件中,减少io消耗。 于是把注意力集中到compile这个函数中,将所有的compile注释掉之后,还是有编译执行,于是走上漫漫调试路,中途有一些bug修改,又犹豫着是否要这样调试,一直到今天周四,又将注意力集中到file_put_contents函数中,因为这才是编译中最核心的函数,找到所有带有这函数的文件,终于改了过来。
经此折腾,本来成就感挺高的。突然让我看见一个叫convention的文件,进去一看,是tp的惯例配置文件,里面有一个就有个是否编译的按钮,一试,正是我想要的结果,我个悲催的哇。
总结经验:
1,粗心了,如果选择某种思路,只要中途没有意识到明显的错误,就彻底的执行下去,不要中途又改变思路,也许机会就出现在下一刻
2 ,抓住最核心的函数,并发挥全文查找的功能,一步步排除
3, 一般成名的框架,不会写的很乱,多注意配置文件,配置文件不一定只有一个,从这次可以看出,平台的config文件定义的选项太少,比如调试,cookie等选项都没有,因此应该会有其他的默认配置。
相关文章
相关视频