跳到内容
当前位置:首页>下载方法>CGGA数据库实操:从下载到OS曲线、Cox回归、时间依赖ROC,一套代码跑通

CGGA数据库实操:从下载到OS曲线、Cox回归、时间依赖ROC,一套代码跑通

  • 2026-10-29 03:31:20
CGGA数据库实操:从下载到OS曲线、Cox回归、时间依赖ROC,一套代码跑通

本号由统计之光团队老师所创,有技巧有思路有解读,欢迎关注!10年医学科研指导经验,1v1指导超5000人发表SCI👆

之前我们讲了CGGA是什么、有哪些数据、哪些科室用得上。这一篇直接上手:从官网下载临床表和表达矩阵,整理成可分析的数据框,再跑OS曲线、单因素Cox森林图和时间依赖ROC。代码用R,基因以LOX为例;把函数里的gene="LOX"改成你的目标基因,整套流程可以直接复用。

本文假设你会基本R操作,知道什么是数据框、因子和函数。代码不是黑箱:每段都说明输入、输出和需要检查的地方,你可以按自己的基因和临床问题调整。

下载什么,怎么放

在CGGA官网的Download页选择mRNAseq_693和mRNAseq_325,分别下载临床表(clinical)和RSEM基因水平矩阵(RSEM-genes)。

CGGA.mRNAseq_693_clinical.20200506.txt

CGGA.mRNAseq_693.RSEM-genes.20200506.txt

CGGA.mRNAseq_325_clinical.20200506.txt

CGGA.mRNAseq_325.RSEM-genes.20200506.txt

临床表共13列,列名自带注释,例如Censor (alive=0; dead=1)、Radio_status (treated=1;un-treated=0)。不同版本的列名可能变化,读入后先用names(clin)核对,不要盲目按列号取。693和325是两个独立队列,样本ID没有重叠,适合做训练—验证;但两套RNA-seq的测序平台和批次不同,不能直接合并。

两者都是成人弥漫性胶质瘤,693样本量更大、常用于训练,325常作验证;但这不是硬性规定。关键是先明确研究问题:如果做原发胶质瘤的预后模型,两个队列都只取Primary;如果研究复发,另当别论。下载时临床表和表达矩阵要能按CGGA_ID对上;文件名日期不同不一定代表样本不同,但混用前要核对样本ID和注释版本。

读入、清洗、提取目标基因

下面这个函数做四件事:读入文件、重命名关键列、提取目标基因、统一因子水平。

library(survival)
library(survminer)
library(timeROC)
library(ggplot2)
library(dplyr)
library(broom)
read_cgga <-function(clin_file, expr_file, gene ="LOX") {
clin <-read.delim(clin_file, check.names =FALSE, stringsAsFactors =FALSE)
# 按20200506版列序重命名;换版本请先核对列名
names(clin)[2]  <-"PRS"
names(clin)[8]  <-"Censor"
names(clin)[9]  <-"RT"
names(clin)[10] <-"Chemo"
names(clin)[11] <-"IDH"
names(clin)[12] <-"Codel"
names(clin)[13] <-"MGMT"
expr <-read.delim(expr_file, check.names =FALSE, stringsAsFactors =FALSE)
stopifnot(gene %in%expr$Gene_Name)
vals <-unlist(expr[expr$Gene_Name ==gene, -1], use.names =FALSE)
gene_df <-data.frame(
CGGA_ID =colnames(expr)[-1],
expr =as.numeric(vals)
)
dat <-merge(clin, gene_df, by ="CGGA_ID")
dat$expr_log2 <-log2(dat$expr +1)
dat$Grade  <-factor(dat$Grade, levels =c("WHO II", "WHO III", "WHO IV"))
dat$Gender <-factor(dat$Gender, levels =c("Male", "Female"))
dat$IDH    <-factor(dat$IDH, levels =c("Wildtype", "Mutant"))
dat$Codel  <-factor(dat$Codel, levels =c("Non-codel", "Codel"))
dat$MGMT   <-factor(dat$MGMT, levels =c("un-methylated", "methylated"))
dat$RT     <-factor(dat$RT, levels =c(0, 1), labels =c("No", "Yes"))
dat$Chemo  <-factor(dat$Chemo, levels =c(0, 1), labels =c("No", "Yes"))
dat <-subset(dat, PRS =="Primary"& !is.na(OS) & !is.na(Censor) & OS > 0)
dat
}
dat693 <-read_cgga(
"CGGA.mRNAseq_693_clinical.20200506.txt",
"CGGA.mRNAseq_693.RSEM-genes.20200506.txt"
)

write.csv(dat693, "CGGA_693_LOX_analysis.csv", row.names = FALSE)整理好的分析表可单独导出,后续换模型不用重复整理。

几个关键点:

· OS单位是天;Censor=1表示死亡,0表示存活。

· 只保留原发样本,避免复发样本混杂。693例中符合“原发+OS/Censor完整”的为404例。

· FPKM跨度大,用log2(FPKM+1);Cox和ROC主要用连续型expr_log2,分组用于KM曲线和分组HR。

· 如果基因名找不到,先查别名或Ensembl ID。

· 少数基因名可能对应多行注释,先用table(expr$Gene_Name)确认目标基因只有一行;多行时取均值或最长转录本。

读入后先做三件事:第一,核对样本ID,确保临床表和表达矩阵的CGGA_ID能一一对应;第二,看缺失情况,尤其是OS、Censor、IDH、1p/19q、MGMT;第三,确认因子参考水平。参考水平决定HR的方向:Grade以WHO II为参照,IDH以Wildtype为参照,Codel以Non-codel为参照,Group以Low为参照。参考水平换了,HR的解释也跟着换。

统计之光提供生信分析全流程医学SCI指导:关注一点菜单栏【SCI指导】一【一对一】定制学习方案

分组与OS曲线

按693队列的中位表达分组,切点为0.692,低/高表达各202例。

cutoff <-median(dat693$expr_log2, na.rm =TRUE)
dat693$Group <-factor(ifelse(dat693$expr_log2 > cutoff, "High", "Low"),
levels =c("Low", "High"))
fit <-survfit(Surv(OS, Censor) ~ Group, data =dat693)
survdiff(Surv(OS, Censor) ~ Group, data =dat693)
p <-ggsurvplot(
fit, data =dat693,
pval =TRUE, conf.int=FALSE, risk.table =TRUE,
xlab ="Time (days)", ylab ="Overall survival",
legend.title ="LOX expression",
palette =c("#2E86AB", "#E63946")
)
pdf("OS_LOX_693.pdf", width =7, height =6)
print(p)
dev.off()

isk.table=TRUE会给出每个时间点的风险人数。中位数分组简单、可复现,但不是最优切点。KM曲线看的是随时间累积的生存概率,log-rank检验比较整条曲线,不是某一个时间点。中位生存时间指生存概率降到50%的时间;如果曲线一直高于50%,中位OS会显示NA,这时应报告5年生存率而不是中位OS。风险表要一起看,随访后期风险人数很少时,曲线尾部的波动不可靠。

单因素Cox与森林图

单因素Cox一次看一个变量,输出HR和95%CI。因子变量会按参考水平展开,例如Grade以WHO II为参照。

vars<-c("Age", "Gender", "Grade", "IDH", "Codel", "MGMT", "RT", "Chemo", "Group")
uni <-bind_rows(lapply(vars, function(v) { 
fit <-coxph(as.formula(paste0("Surv(OS, Censor) ~ ", v)), data =dat693)
tidy(fit, exponentiate =TRUE, conf.int=TRUE) %>%
mutate(Variable =v, n =fit$n) 
}))
write.csv(uni, "univariate_cox_693.csv", row.names =FALSE)

HR=1表示无差异;HR>1表示风险升高,HR<1表示风险降低。95%CI不跨1,通常对应P<0.05。连续变量Age的HR是“每增加1岁”的风险比,不是每增加10岁;如果要按10岁报告,先把Age除以10,或写清单位。分类变量的HR是相对于参考水平,例如Grade IV vs II的HR 8.50,不能解释为“Grade IV比Grade III高8.5倍”。

这些是单因素结果,没有校正混杂,HR不能直接理解为独立效应。要回答“独立预后价值”,需要多因素模型,并检查比例风险假定:

multi <-coxph(
Surv(OS, Censor) ~ Age +Grade +IDH +Codel +MGMT +RT +Chemo +Group,
data =dat693)
summary(multi)

如果cox.zph的P<0.05,说明比例风险假定不成立,可考虑分层Cox或时间依存协变量,不要硬解释。

时间依赖ROC

生存数据有删失,普通ROC不适用,要用时间依赖ROC。timeROC的marker是连续型表达量,times按天设置。

oc <-timeROC(
T =dat693$OS, delta =dat693$Censor,
marker =dat693$expr_log2,
cause =1, weighting ="marginal",
times =c(365, 1095, 1825), iid =TRUE
)
pdf("ROC_LOX_693.pdf", width =5, height =5)
plot(roc, time =365,  col ="#E63946", title =FALSE, lwd =2)
plot(roc, time =1095, col ="#2E86AB", add =TRUE, lwd =2)
plot(roc, time =1825, col ="#F4A261", add =TRUE, lwd =2)
legend("bottomright",
legend =paste0(c("1-year", "3-year", "5-year"), " AUC=",
sprintf("%.3f", roc$AUC)),
col =c("#E63946", "#2E86AB", "#F4A261"), lwd =2, bty ="n")
dev.off()

普通ROC把“是否事件”当成二分类,但生存数据里有人随访结束时仍未发生事件,直接丢掉这些样本会偏倚,将其当做阴性也会偏倚。时间依赖ROC在每个时间点重新定义“到该时间点是否发生事件”,并利用删失前的信息,所以更适合生存数据。

本文的Censor是0/1,timeROC对象里AUC字段叫AUC;如果终点含竞争风险,字段名会变成AUC_1。示例AUC:1年0.576、3年0.698、5年0.691。AUC只反映区分度,0.5相当于随机,0.7左右可接受,0.8以上较好;它不代表校准,也不代表临床净获益。单基因、未校正的AUC通常不会很高,这是正常的。如果AUC低于0.5,先检查marker方向,不要急着换基因。1年、3年、5年的选择要跟临床问题一致;如果随访不足5年,5年AUC不稳定。

常见的坑

1.两套RNA-seq平台不同,合并前做批次评估;用ComBat时保留批次协变量,不能把批次和分组完全混在一起。

2.原发和复发不要混。复发是另一个研究问题,混在一起做生存分析会引入混杂。

3.缺失值要报告。693中IDH缺51例、1p/19q缺70例、MGMT缺151例;单因素模型各自删除缺失,n不同,不能只写“n=693”。

4.WHO版本要写清。主队列按2007/2016版注释,做2021版整合诊断要自己用IDH、1p/19q和组织学换算;IDH和1p/19q是推断结果,不是FISH。

5.切点要在训练集定,验证集固定。不要在全队列找最优切点,再用同一批数据检验。

6.多重检验要控制。不要筛几千个基因后只报最小的P;预设定假设,或做FDR校正。

另外两点:Cox模型要检查cox.zph;ROC的AUC不是临床效用,真要谈临床价值,还需要校准曲线和决策曲线分析。代码复现方面,论文里写清下载日期、数据版本、R包版本,并把sessionInfo()放进补充材料。

结语

这套流程可以复用到其他基因或者生存终点:版本配对→清洗→训练集定切点→OS/Cox/ROC。数据库分析只能提出假设;要下生物学结论,还需要实验验证和前瞻性队列。

想做生信发文却无从下手?数据分析卡壳没人带?别焦虑!统计之光提供生信分析一对一全流程教学。从思路构建到代码实操,手把手教你跑通全流程,让发文章不再是难题!

生信发表案例展示

生信分析一对一全流程:选题沟通→数据挖掘/准备→数据清洗→统计分析→写作指导→初稿批注→语言服务→投稿指导→返修指导📚

零基础友好,有基础也能进阶高阶实战,全程收获量身匹配的成长!

统计之光可以指导多种类生信:基因组学、蛋白组学、代谢组学、单细胞测序分析、网络药理学、转录组学表观组学、微生物组学、孟德尔随机化等等。

统计之光提供生信分析全流程医学SCI指导:关注一点菜单栏【SCI指导】一【一对一】定制学习方案

往期精彩

1

2026年国家自然科学基金获批项目

2

生信文章常见图拆解(上):火山图、热图、富集图、机器学习图怎么读

3

CGGA数据库全解:它是什么,哪些科室真的用得上

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-10-29 07:24:15 HTTP/1.1 GET : http://yeyulingfeng.com/a/498067.html
  2. 运行时间 : 0.068934s [ 吞吐率:14.51req/s ] 内存消耗:4,459.03kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=18480dad4ff66c78912033d20dc07307
  1. /www/wwwroot/yeyulingfeng.com/public/index.php ( 0.79 KB )
  2. /www/wwwroot/yeyulingfeng.com/vendor/autoload.php ( 0.17 KB )
  3. /www/wwwroot/yeyulingfeng.com/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /www/wwwroot/yeyulingfeng.com/vendor/composer/platform_check.php ( 0.90 KB )
  5. /www/wwwroot/yeyulingfeng.com/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /www/wwwroot/yeyulingfeng.com/vendor/composer/autoload_static.php ( 4.90 KB )
  7. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /www/wwwroot/yeyulingfeng.com/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  14. /www/wwwroot/yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  15. /www/wwwroot/yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  16. /www/wwwroot/yeyulingfeng.com/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  17. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  18. /www/wwwroot/yeyulingfeng.com/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  19. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  20. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  21. /www/wwwroot/yeyulingfeng.com/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  22. /www/wwwroot/yeyulingfeng.com/app/provider.php ( 0.19 KB )
  23. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  24. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  25. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  26. /www/wwwroot/yeyulingfeng.com/app/common.php ( 0.03 KB )
  27. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  28. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  29. /www/wwwroot/yeyulingfeng.com/config/app.php ( 0.95 KB )
  30. /www/wwwroot/yeyulingfeng.com/config/cache.php ( 0.78 KB )
  31. /www/wwwroot/yeyulingfeng.com/config/console.php ( 0.23 KB )
  32. /www/wwwroot/yeyulingfeng.com/config/cookie.php ( 0.56 KB )
  33. /www/wwwroot/yeyulingfeng.com/config/database.php ( 2.50 KB )
  34. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  35. /www/wwwroot/yeyulingfeng.com/config/filesystem.php ( 0.61 KB )
  36. /www/wwwroot/yeyulingfeng.com/config/lang.php ( 0.91 KB )
  37. /www/wwwroot/yeyulingfeng.com/config/log.php ( 1.35 KB )
  38. /www/wwwroot/yeyulingfeng.com/config/middleware.php ( 0.19 KB )
  39. /www/wwwroot/yeyulingfeng.com/config/route.php ( 1.89 KB )
  40. /www/wwwroot/yeyulingfeng.com/config/session.php ( 0.57 KB )
  41. /www/wwwroot/yeyulingfeng.com/config/trace.php ( 0.34 KB )
  42. /www/wwwroot/yeyulingfeng.com/config/view.php ( 0.82 KB )
  43. /www/wwwroot/yeyulingfeng.com/app/event.php ( 0.25 KB )
  44. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  45. /www/wwwroot/yeyulingfeng.com/app/service.php ( 0.13 KB )
  46. /www/wwwroot/yeyulingfeng.com/app/AppService.php ( 0.26 KB )
  47. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /www/wwwroot/yeyulingfeng.com/vendor/services.php ( 0.14 KB )
  53. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  64. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  65. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  68. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /www/wwwroot/yeyulingfeng.com/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /www/wwwroot/yeyulingfeng.com/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /www/wwwroot/yeyulingfeng.com/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  80. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  81. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  82. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  83. /www/wwwroot/yeyulingfeng.com/app/Request.php ( 0.09 KB )
  84. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  85. /www/wwwroot/yeyulingfeng.com/app/middleware.php ( 0.25 KB )
  86. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  87. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  88. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  89. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  90. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  91. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  92. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  93. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  94. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  95. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  96. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  97. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  98. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  99. /www/wwwroot/yeyulingfeng.com/route/app.php ( 1.72 KB )
  100. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  101. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  102. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  103. /www/wwwroot/yeyulingfeng.com/app/controller/Index.php ( 5.22 KB )
  104. /www/wwwroot/yeyulingfeng.com/app/BaseController.php ( 2.05 KB )
  105. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  106. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  107. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  108. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  109. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  110. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  111. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  112. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  113. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  114. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  115. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  116. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  117. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  118. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  119. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  120. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  121. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  122. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  123. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  124. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  125. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  126. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  127. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  128. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  129. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  130. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  131. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  132. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  133. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  134. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  135. /www/wwwroot/yeyulingfeng.com/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  136. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  137. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  138. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  139. /www/wwwroot/yeyulingfeng.com/runtime/temp/44b959ca79ad33496f044db2c231b11d.php ( 8.29 KB )
  140. /www/wwwroot/yeyulingfeng.com/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000569s ] mysql:host=172.18.0.4;port=3306;dbname=no_yeyulingfeng;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000850s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000495s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000344s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000564s ]
  6. SELECT * FROM `set` [ RunTime:0.000277s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000595s ]
  8. SELECT * FROM `article` WHERE `id` = 498067 LIMIT 1 [ RunTime:0.000402s ]
  9. UPDATE `article` SET `lasttime` = 1793229855 WHERE `id` = 498067 [ RunTime:0.001572s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000297s ]
  11. SELECT * FROM `article` WHERE `id` < 498067 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000402s ]
  12. SELECT * FROM `article` WHERE `id` > 498067 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000371s ]
  13. SELECT * FROM `article` WHERE `id` < 498067 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.000590s ]
  14. SELECT * FROM `article` WHERE `id` < 498067 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.000512s ]
  15. SELECT * FROM `article` WHERE `id` < 498067 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.000595s ]
0.078597s