欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

如何在源码中找出sql语句的位置呢

程序员文章站 2024-01-17 18:29:04
...
下面这个图中箭头指的地方肯定是一个数组,而这个数组肯定在之前是sql出来的,我想找出这个sql句,不知如何查呢源码呢?主要是关键字怎么输呢


回复讨论(解决方案)

查找 $output 变量。

在引入这个模版文件的php页面查找$output

我查了一下,没有,引入的页面是index.php

查找 $output 变量。


整个源码中有几百处引用$output,看的我头婚眼又花啊,妈牙!这可咋整,还有别的招吗?

查navigation这个model的类

我还是帖出index.php引入页的源码吧

查navigation这个model的类


不好意思,这个类有是有,但里面是空的

它里面有这么一句话:
/**
* 获取导航
*/
Tpl::output('nav_list',($nav = F('nav'))? $nav :H('nav',true,'file'));

不知从这句中查哪里呢

用 debug_backtrace 看一下

用 debug_backtrace 看一下

试了一下,打印出这么一大坨,这怎么判断呢

[code=php]
Array ( [0] => Array ( [file] => D:\WWW\cms\templates\default\layout\cms_layout.php [line] => 3 [function] => require ) [1] => Array ( [file] => D:\WWW\core\framework\libraries\tpl.php [line] => 118 [args] => Array ( [0] => D:\WWW\cms\templates\default\layout\cms_layout.php ) [function] => include_once ) [2] => Array ( [file] => D:\WWW\cms\control\index.php [line] => 20 [function] => showpage [class] => Tpl [type] => :: [args] => Array ( [0] => index ) ) [3] => Array ( [file] => D:\WWW\core\framework\core\base.php [line] => 97 [function] => indexOp [class] => indexControl [object] => indexControl Object ( [publisher_name:protected] => [publisher_id:protected] => 0 [publisher_type:protected] => 0 [attachment_path:protected] => [publish_state:protected] => 2 ) [type] => -> [args] => Array ( ) ) [4] => Array ( [file] => D:\WWW\core\framework\core\base.php [line] => 52 [function] => control [class] => Base [type] => :: [args] => Array ( ) ) [5] => Array ( [file] => D:\WWW\cms\index.php [line] => 35 [function] => run [class] => Base [type] => :: [args] => Array ( ) ) )
[/code]

我突然想到了,它会不会是一个表单,因为这个是后台输入的,只要一输入就进入这个数组里面,结果一查还真是,不过还有一点疑问,那就是这个数组索引在td中啊,虽然这个td在form表单中,但是就是这样,他也不会在表单值中啊,因为表单我理解必须在input中才行,这个怎么解释呢

还有一点就是:这个 $output到底在哪里定义的,它不可能凭空就有的,肯定是在哪里定义的
我搜了下源码,到是有不少$output,但是都不象定义的初始模样,很多一看就是引用的。