当前位置:首页>Linux>笑不活了!Linux库制作竟是“代码打包神器”,新手也能秒会

笑不活了!Linux库制作竟是“代码打包神器”,新手也能秒会

  • 2026-03-26 09:13:44
笑不活了!Linux库制作竟是“代码打包神器”,新手也能秒会

点击蓝字

关注我们

笑不活了!Linux库制作竟是“代码打包神器”,新手也能秒会

新手必看|告别代码复制粘贴,教你打包专属库,马年写代码效率翻倍✅

一、前言:谁懂啊!重复写代码比天天吃外卖还腻

刚搞定Linux文件IO、命令行操作的宝子们,又陷入新困境:写代码时,每次都要重复写相同的函数——比如打印日志、字符串处理、文件操作,复制粘贴都嫌烦,改一处要改所有地方,比天天吃同一种外卖还腻人!

就像你每天早上都要煮鸡蛋、热牛奶,重复做同样的事,麻烦又耗时;如果提前把鸡蛋煮好、牛奶热好,早上直接拿过来吃,就能省出很多时间。Linux库就是这个“提前备好的早餐”,把常用的代码打包成一个“工具包”,下次用的时候直接调用,不用重复写,省时又省心。

今天就用最接地气、最风趣的话,把Linux库的制作和使用讲得明明白白,全程无晦涩术语,不搞复杂理论,重点讲新手必学的“静态库”和“动态库”,从打包到调用,一步一步带练,搭配生活化类比和实操代码,新手跟着学,不用记复杂命令,马年轻松搞定Linux库,摆脱重复写代码的噩梦!

二、秒懂Linux库:不是玄学,是“代码的打包压缩包”

2.1 核心定义:Linux库 = 常用代码的“集合包”,拿来就用

先破除新手恐惧:Linux库不是什么高大上的技术,本质就是“把多个常用的函数、代码片段,打包成一个文件”,就像你把常用的文具(笔、橡皮、尺子)装进笔袋里,用的时候直接从笔袋里拿,不用到处找;Linux库就是这个“笔袋”,把常用的代码装起来,调用的时候直接用,不用重复写。

举个生活化的例子,新手一看就懂,全是日常场景,不用死记硬背:

1.  静态库:就像你把常用的文具(笔、橡皮)直接装进书包,走到哪带到哪,不用依赖其他东西,不管在哪个教室,都能直接拿出来用;

2.  动态库:就像你家楼下的便利店,平时不用把所有东西都带在身上,需要的时候去便利店买就行,节省空间,但必须依赖便利店(系统环境)才能用;

3.  库的使用:就像你用手机APP,不用自己开发APP,直接下载安装,打开就能用,库就是别人(或自己)开发好的“代码APP”,拿来调用就可以。

补充一句:Linux库最贴心的地方,就是“复用性”——一次打包,多次使用,不管是自己写的多个项目,还是和别人协作,都能直接调用,不用重复写相同的代码,大大提高写代码的效率,新手学会库的制作和使用,能少走很多弯路。

2.2 关键区分:静态库 vs 动态库,新手别再傻傻分不清

新手最容易搞混:静态库和动态库到底有啥区别?其实很简单,就像你带饭和吃外卖,一个自带所有,一个依赖外部,核心区别就是“是否依赖系统环境”。

用一个生活化的类比,一眼分清两者的区别,新手直接记,再也不纠结:

静态库:就像你带自制便当,把米饭、菜都装在饭盒里,不管走到哪,不用依赖别人,打开就能吃,缺点是饭盒占地方(生成的可执行文件变大);

动态库:就像你点外卖,不用自己带饭盒,想吃的时候点一份,外卖员送到手上就能吃,节省空间(生成的可执行文件变小),但缺点是依赖外卖平台(系统环境),平台出问题就吃不到。

用一个表格,把两者的核心区别讲透,新手直接抄作业,对比着记更简单:

|对比维度|静态库(.a)|动态库(.so)|

|---|---|---|

|核心特点|打包进可执行文件,不依赖系统|不打包进可执行文件,依赖系统环境|

|可执行文件大小|较大,包含库的所有内容|较小,只包含调用接口|

|生活化类比|带自制便当,自给自足|点外卖,依赖外卖平台|

|适用场景|新手入门、项目独立运行、不依赖环境|多个项目共用、追求文件小巧、系统部署|

补充一句:新手入门,优先学静态库!静态库制作简单、使用方便,不用配置系统环境,打包后直接调用,不容易出错,学会静态库后,再学动态库,循序渐进,轻松拿捏Linux库的核心用法。

三、新手必学:静态库制作+使用,马年直接抄作业

3.1 静态库制作:3步搞定,比煮泡面还简单

静态库的制作超级简单,就3个步骤:写常用函数(源文件)→ 编译成目标文件 → 打包成静态库,就像你煮泡面:烧开水 → 放面饼 → 放调料,3步到位,新手跟着敲命令,不用动脑子。

新手重点记:静态库的后缀是“.a”,就像泡面的包装,一看就知道是静态库,制作过程中,核心命令就2个:gcc编译、ar打包,不用记复杂参数。

实操步骤+代码示例,简单好懂,注释写得明明白白,新手可直接复制练习,贴合Linux新手场景:

第一步:写常用函数(源文件,比如my_lib.c),这里我们写2个常用函数:打印日志、求两个数的和,后续直接调用:

```Plain Text

#include <stdio.h>

// 打印日志函数(常用函数1)

void print_log(const char *msg) {

   printf("[日志]:%s\n", msg); // 简单打印日志,新手可直接用

}

// 求两个数的和(常用函数2)

int add(int a, int b) {

   return a + b; // 简单计算,演示用

}

```

第二步:写头文件(my_lib.h),用来声明函数,告诉别人这个库有哪些函数可以调用,就像泡面包装上的说明,告诉别人怎么吃:

```Plain Text

#ifndef MY_LIB_H

#define MY_LIB_H

// 声明打印日志函数

void print_log(const char *msg);

// 声明求和函数

int add(int a, int b);

#endif

```

第三步:编译+打包,生成静态库(libmy_lib.a),敲2条命令,直接复制就行:

```Plain Text

第一步:将源文件编译成目标文件(.o文件),-c表示只编译不链接

gcc -c my_lib.c -o my_lib.o

第二步:将目标文件打包成静态库,ar rcs 静态库名 目标文件

ar rcs libmy_lib.a my_lib.o

```

总结:静态库制作的核心就是“写函数→编目标文件→打包”,3步搞定,新手重点记住两条命令,多敲1遍就能上手,就像煮泡面,多煮一次就熟练了。

3.2 静态库使用:2步调用,比用APP还简单

静态库制作好后,使用更简单,就2个步骤:写主程序(调用库中的函数)→ 编译主程序,链接静态库,生成可执行文件,就像你打开手机APP,点击图标就能用,不用复杂操作。

新手注意:调用静态库时,要告诉编译器“静态库在哪、叫什么名字”,否则编译器找不到库,会报错,就像你找文具,要知道笔袋在哪,才能拿到笔。

实操步骤+代码示例(结合上面制作的静态库):

第一步:写主程序(main.c),调用静态库中的print_log和add函数:

```Plain Text

#include "my_lib.h" // 引入静态库的头文件,告诉编译器有哪些函数

int main() {

   // 调用静态库中的打印日志函数

   print_log("马年学Linux库,静态库调用成功!");

   // 调用静态库中的求和函数

   int sum = add(10, 20);

   print_log("10 + 20 = ?");

   printf("计算结果:%d\n", sum);

   return 0;

}

```

第二步:编译主程序,链接静态库,生成可执行文件(main),敲1条命令,直接复制:

```Plain Text

gcc 主程序源文件 -o 可执行文件名 -L. -lmy_lib

-L. 表示静态库在当前目录(.代表当前目录)

-lmy_lib 表示要链接的静态库名(去掉前面的lib和后面的.a)

gcc main.c -o main -L. -lmy_lib

```

第三步:运行可执行文件,查看结果,敲命令:./main,就能看到调用静态库后的效果,完美!

总结:静态库使用的核心就是“引入头文件→编译链接”,新手重点记住编译命令中的“-L.”和“-l库名”,不要写错,否则会找不到库,多练1遍就能熟练调用。

四、进阶学习:动态库制作+使用,新手也能轻松拿捏

4.1 动态库制作:3步搞定,和静态库大同小异

动态库的制作和静态库很像,也是3个步骤:写常用函数→编译成目标文件→打包成动态库,区别就是编译和打包的命令不一样,就像你煮泡面和煮螺蛳粉,步骤一样,调料不一样。

新手重点记:动态库的后缀是“.so”,就像螺蛳粉的包装,和静态库的“.a”区分开,打包命令和静态库不同,核心命令是gcc的“-fPIC”和“-shared”参数。

实操步骤(沿用上面的my_lib.c和my_lib.h,不用重新写):

```Plain Text

第一步:将源文件编译成目标文件,-fPIC表示生成位置无关代码(动态库必须加)

gcc -c -fPIC my_lib.c -o my_lib.o

第二步:将目标文件打包成动态库,-shared表示生成动态库

gcc -shared -o libmy_lib.so my_lib.o

```

总结:动态库制作和静态库的区别,就在于编译时加“-fPIC”,打包时用gcc的“-shared”参数,其他步骤完全一样,新手跟着敲命令,不用纠结原理,先会用再说。

4.2 动态库使用:比静态库多1步,重点在“找库”

动态库的使用,前2步和静态库一样:写主程序→编译链接,但多了1步“告诉系统动态库在哪”,因为动态库不打包进可执行文件,系统找不到动态库,就会报错,就像你点外卖,外卖员找不到你家地址,就送不到。

新手必记2种“找库”方法,简单好懂,任选一种就行,不用记复杂配置:

方法1:把动态库放到系统默认的库目录(比如/lib、/usr/lib),系统会自动找到,就像你把便利店开在小区门口,出门就能找到;

方法2:临时设置环境变量LD_LIBRARY_PATH,告诉系统动态库在当前目录,就像你告诉外卖员你家的临时地址,送一次就到。

实操步骤(沿用上面的main.c,直接调用):

第一步:编译主程序,链接动态库,命令和静态库类似,只是库后缀不一样:

```Plain Text

gcc 主程序源文件 -o 可执行文件名 -L. -lmy_lib

和静态库编译命令一样,编译器会自动区分静态库和动态库

gcc main.c -o main -L. -lmy_lib

```

第二步:设置环境变量,告诉系统动态库在当前目录(临时生效,重启终端失效):

```Plain Text

export LD_LIBRARY_PATH=./:$LD_LIBRARY_PATH

```

第三步:运行可执行文件,查看结果,敲命令:./main,就能成功调用动态库!

总结:动态库使用的核心就是“编译链接+告诉系统库的位置”,新手重点记住环境变量的设置,避免系统找不到动态库报错,多练1遍,就能轻松掌握。

五、避坑指南:新手制作使用Linux库,别再踩这些坑

5.1 陷阱1:制作静态库,忘记写头文件,导致调用报错

新手最容易犯的错:只写源文件(my_lib.c),不写头文件(my_lib.h),调用的时候编译器不知道函数的声明,就会报错,就像你买了泡面,没有说明书,不知道怎么煮。

避坑妙招:制作库的时候,一定要写头文件,把所有要调用的函数都声明在头文件里,调用的时候引入头文件,新手直接抄上面的头文件写法就行。

5.2 陷阱2:编译链接时,库名写错,导致找不到库

很多新手编译的时候,容易把库名写错,比如静态库是libmy_lib.a,编译时写成-lmy_lib1,编译器找不到库,就会报错,就像你找笔袋,把名字叫错了,找不到笔袋。

避坑妙招:编译命令中的“-l库名”,要去掉静态库的“lib”和“.a”,去掉动态库的“lib”和“.so”,比如libmy_lib.a → -lmy_lib,不要多写或少写字符。

5.3 陷阱3:使用动态库,忘记设置环境变量,导致运行报错

新手使用动态库时,最容易忘记设置环境变量,编译成功后,运行可执行文件,报错“找不到动态库”,以为自己代码写错了,其实是系统找不到库的位置。

避坑妙招:使用动态库前,一定要设置环境变量LD_LIBRARY_PATH,告诉系统动态库在当前目录,或者把动态库放到系统默认的库目录,二选一即可。

5.4 陷阱4:静态库和动态库同名,编译器优先链接动态库

新手如果同时制作了同名的静态库(libmy_lib.a)和动态库(libmy_lib.so),编译链接时,编译器会优先链接动态库,导致想调用静态库,结果调用了动态库,就像你想带便当,结果不小心点了外卖。

避坑妙招:如果想优先链接静态库,编译时加“-static”参数,或者删除同名的动态库,避免混淆。

5.5 陷阱5:制作动态库,忘记加“-fPIC”参数,导致打包失败

新手制作动态库时,容易忘记在编译目标文件时加“-fPIC”参数,导致打包动态库失败,报错“无法生成位置无关代码”,就像你煮螺蛳粉,忘记放调料包,煮出来不好吃。

避坑妙招:制作动态库,编译目标文件时,一定要加“-fPIC”参数,这是动态库的必备参数,新手直接抄上面的命令就行,不要省略。

六、结尾:用好Linux库,马年写代码效率翻倍

看到这里,是不是觉得Linux库的制作和使用一点都不难?其实它就是“代码的打包神器”,静态库简单易用、不依赖环境,动态库小巧灵活、可共用,新手先掌握静态库,再学动态库,循序渐进,就能轻松拿捏。

新手不用怕,刚开始不用追求复杂的库制作,先把常用的函数打包成静态库,调用熟练后,再尝试制作动态库,多敲几遍命令,多练几次,就能熟练掌握。学会Linux库的制作和使用,能让你摆脱重复写代码的噩梦,一次打包,多次使用,写代码效率翻倍,再也不用复制粘贴,节省更多时间去摸鱼(不是),去提升自己。

记住,Linux库是Linux开发的必备技能,不管是日常学习、工作,还是后续学习更复杂的Linux项目,都离不开库,学好它,能让你在Linux的世界里更顺畅,和之前学的Linux文件IO、C语言结合,能让你的编程能力更上一层楼。

2026丙午马年,愿你吃透Linux库的制作和使用,用好这个“代码打包神器”,摆脱重复劳动,写代码不踩坑、效率高,编程之路一马当先,早日实现“代码自由”!

✨ 关注我,下期解锁Linux库进阶用法,新手也能轻松拿捏Linux ✨

扫码关注我们

知识奇妙世界

最新文章

随机文章

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