使用函数查询项目里使用的所有数据表的名字

 1 <style>
 2
 3     ul{
 4         width: 100%;;
 5     }
 6     li{
 7         float: left;
 8         margin-right: 5px;;
 9
10     }
11     #content{
12         width: 100%;
13         14     }
15 </style>
16 <?php
17 //$dir =  dirname(getcwd());
18 //$filepath = $dir.‘\\‘.‘communication‘.‘\\‘.‘mod_index.php‘;
19 header("Content-Type:text/html;Charset=utf-8");
20 $path = dirname(getcwd());
21 $direction = dir($path);
22
23 $allow = array(
24
25 );
26 $result = array();
27 getTables($direction);
28 $direction->close();
29 printTable($result);
30
31
32 /**
33  * 获得此目录下的所有php文件查询语句使用到的table表名
34  * @param $direction 目录控制句柄
35  */
36 function getTables($direction){
37     global $allow,$result;
38     while(($file = $direction->read()) != false){
39         $tables = array();
40         if($file != ‘.‘ && $file != ‘..‘ && strpos($file,‘.‘) && strstr($file,‘.‘) == ‘.php‘){
41             $filepath =  getPath($direction->path,$file);
42            $content = file_get_contents($filepath);
43             preg_match_all("/DB_TABLEPRE.[\"|‘]([^\s‘\"]*)/i",$content,$tables);
44             $tables = array_unique($tables[1]);
45             $result = array_merge($result,$tables);
46         }elseif(is_dir($childdir = getPath($direction->path,$file))){
47             if(in_array($file,$allow)){
48                 $dir = dir($childdir);
49                 getTables($dir);
50                 $dir->close();
51             }else{
52                 continue;
53             }
54         }
55     }
56 }
57
58
59 /** 获得完成路径
60  * @param $dir
61  * @param $file
62  * @return string
63  */
64 function getPath($dir,$file){
65     return $dir.‘\\‘.$file;
66 }
67
68 /** 打印表格
69  * @param $arr
70  */
71 function printTable($arr){
72     $arr = array_unique($arr);
73     $html = ‘<div id="content"><ul>‘;
74     $num = 0;
75     foreach($arr as $k){
76         $html .=  "<li>$num :".$k." </li>";
77         $num++;
78     }
79     $html .= ‘</ul></div>‘;
80     echo $html;
81     echo "<div style=‘display: inherit‘>数据表的个数为:".count($arr)."</div>";
82 }
时间: 2024-11-05 11:00:53

使用函数查询项目里使用的所有数据表的名字的相关文章

验证查询项目的属性和关系

1.验证查询项目的属性 对象属性允许你添加额外的信息,诸如描述和屏幕提示,查询项目属性可以允许你编辑查询项目的行为,诸如配置数据的格式.在导入完模型后,需要检查以下两个属性: (1)用途属性(Usage property) Facts(资料):Numeric(数值),time-interval(时间间隔),非索引列 . Identifiers(标识):Key(键),索引,日期,时间,任何索引列. Attributes(属性):字符串,BLOBS. Unkown(未知):当模型设计开发者不能确定数

MySQL数据表查询操作

准语法结构:编写DQL时一定要严格按照此语法的顺序来实现!/* SELECT [ALL | DISTINCT] ALL表示查询出所有的内容 DISTINCT 去重 {* | 表名.* | 表名.字段名[ AS 别名][,...]} 指定查询出的字段的 FROM 表名[AS 别名][,表1... AS 别名] [INNER | [LEFT | RIGHT] [OUTER] JOIN 另一张表名 [AS 别名] ON 关联条件] [WHERE 条件] [GROUP BY 分组字段[,...]] [H

[SQL]取得数据库里的数据表、字段、型态、长度、数据结构等资讯

如果想动态做查询条件,或是撰写表单产生器,以及动态产生表单,可以利用以下语法,放到检视表里以供使用. 如果想动态做查询条件,或是撰写表单产生器,以及动态产生表单,可以利用以下语法,放到检视表里以供使用. 假设我数据库里有两个数据表分别为Departments和Employees如下: Departments 数据行名称 数据类型 长度 允许Null dno varchar 50 0 name varchar 50 0 manager varchar 50 0 budget int 4 0 Emp

Oracle生成查询包括对应于所有数据表记录语句中指定的字段名

应用:已知的字段名,表中的所有数据的查询数据库中包含的所有数据表的字段名 操作方法:指定字段名,用户数据库表,它可以执行以下查询 --Oracle生成查询包括对应于所有数据表记录语句中指定的字段名 declare mycolumnname VARCHAR(255):='userid';--定义要查询的字段名变量,执行前改动成您要查询的字段名myownername VARCHAR(255):='system';--定义要查询的数据库username变量,执行前改动成您要查询的数据库username

Oracle使用游标查询指定数据表的所有字段名称组合而成的字符串

应用场合:参考网上查询数据表的所有字段名代码,使用游标生成指定单个表的所有字段名跟逗号组成的用于select  逗号隔开的字段名列表 from字符串等场合. 查询结果输出如下: 当前数据表TB_UD_USER的字段列表字符串为AH,BIRTHPLACE,BM,CELLPHONE,CJGZRQ,DEPARTMENT2,DJJID,GZCX,GZKH,GZSFZH,HJDZ,HYZK,ID,JHRQ,JTZZ,LAFX_LD,LJDZ,LLY,LXDH,NAME,NXDH,POLICENUMBER,

以面向对象的思想实现数据表的添加和查询,JDBC代码超详细

以面向对象的思想编写JDBC程序,实现使用java程序向数据表中添加学生信息,并且可以实现给定×××号查询学生信息或给定准考证号查询学生信息. 创建的数据表如下: CREATE TABLE EXAMSTUDENT(FlowID INTEGER,Type INTEGER,IDCard VARCHAR(18),ExamCard VARCHAR(15),StudentName VARCHAR(20),Location VARCHAR(20),Grade INTEGER);1.首先实现通过java程序在

在asp.net mvc4项目里bootstrap datetimepicker控件的使用

前段时间写了一篇关于调用阿里大于的短信接口来开发例会短信群发通知功能的文章http://www.cnblogs.com/zhouyuangan/p/apicall_1.html,其中的例会时间是需求中的重中之重,它需要满足“格式化”,“易输入”这两点,对短信费用关心的开发者要知道长短信是两条短信费用之和,因此,例会时间不能随意交给用户自定义输入:要考虑到“易输入”这点,只能选择日期选择控件来辅助用户输入,由于日期选择控件较为小巧使用,在页面中引入并不是难事.在本篇文章中,使用的是bootstra

js根据url查询字符串里的键名获取其值

先来运行结果 下面是页面代码 testJsGetUrlAttribute.html <script> var rout = getUrlAttribute('rout'); if(null!=rout) { alert(rout); } /** * 20150514 14:30 * 作者:Ro * 根据url查询字符串里的键名获取其值 */ function getUrlAttribute(parameName) { //location.search是从当前URL的?号开始的字符串,即查询字

Nodejs开源项目里怎么样写测试、CI和代码测试覆盖率

测试 目前主流的就bdd和tdd,自己查一下差异 推荐 mocha和tape 另外Jasmine也挺有名,angularjs用它,不过挺麻烦的,还有一个选择是qunit,最初是为jquery测试写的,在nodejs里用还是觉得怪怪的. 如果想简单可以tap,它和tape很像,下文会有详细说明 mocha mocha是tj写的 https://github.com/mochajs/mocha var assert = require("assert") describe('truth',