当前位置:首页>python>玩转Python图像处理:手把手教你将普通图片转换成极具创意的字符画

玩转Python图像处理:手把手教你将普通图片转换成极具创意的字符画

  • 2026-07-02 11:45:06
玩转Python图像处理:手把手教你将普通图片转换成极具创意的字符画

在数字时代,图片是我们传递情感、记录生活的重要载体,但你是否想过,一张普通的照片、插画,能通过Python魔法,变成由简单字符组成的独特艺术作品?字符画,这种将像素与文字结合的创意形式,既能保留原图的核心轮廓与意境,又能增添几分复古与趣味,无论是用于朋友圈分享、个性签名,还是制作专属贺卡,都能让人眼前一亮。今天,我们就手把手教你,用几行Python代码,轻松实现图片到字符画的转换,解锁Python图像处理的新玩法。

        在开始之前,我们先简单了解一下字符画的原理:本质上是将图片的每个像素,根据其明暗程度,映射成对应的字符——深色像素用密集的字符(如@、%)表示,浅色像素用稀疏的字符(如.、空格)表示,通过字符的疏密排列,还原原图的轮廓和明暗层次。而PythonPillow库,能帮我们快速处理图片的打开、灰度转换、尺寸调整等操作,再配合简单的逻辑编写,就能完成这场“像素到字符”的蜕变。

前期准备:搭建Python环境与依赖库

   工欲善其事,必先利其器。在编写代码之前,我们需要准备好Python运行环境,并安装必要的依赖库,步骤非常简单,新手也能轻松上手。

1.  确保你的电脑已安装Python(建议3.7及以上版本),可通过官网下载安装,安装时记得勾选“Add Python to PATH”,方便后续在命令行运行。

2.  安装Pillow库:Pillow是Python中最常用的图像处理库,能实现图片的打开、转换、缩放等核心操作。打开命令行(Windows按Win+R输入cmd,Mac按Command+空格输入terminal),输入以下命令,一键安装:

pip install pillow

安装完成后,我们就可以开始编写代码,开启创意之旅啦!

核心代码解析:读懂每一步的魔法

       下面我们将逐段解析完整的转换脚本,不仅教你如何运行,更让你理解每一行代码的作用,真正做到“知其然,也知其所以然”。完整脚本如下,先整体预览,再逐步拆解:

from PIL import Image# 定义字符集,从密集到稀疏,对应从暗到亮ASCII_CHARS = "@%#*+=-:. "def get_char(gray_value):    """将灰度值映射为字符"""    # 防止索引越界    index = int(gray_value / 255 * (len(ASCII_CHARS) - 1))    return ASCII_CHARS[index]def image_to_ascii(image_path, width=100):    """    将图片转换为字符画    :param image_path: 图片路径    :param width: 输出字符画的宽度    :return: 字符画字符串    """    try:        # 打开图片并转换为灰度图        img = Image.open(image_path).convert('L')        # 计算新的高度,保持宽高比,字符高宽比通常约为2:1,所以高度要压缩        original_width, original_height = img.size        aspect_ratio = original_height / original_width        new_height = int(width * aspect_ratio * 0.5)        # 调整图片大小        img = img.resize((width, new_height), Image.Resampling.LANCZOS)        # 获取像素数据        pixels = img.getdata()        # 构建字符画        ascii_image = ""        for i, pixel in enumerate(pixels):            ascii_image += get_char(pixel)            # 每行结束后换行            if (i + 1) % width == 0:                ascii_image += "\n"        return ascii_image    except Exception as e:        return f"错误: {e}"if __name__ == "__main__":    # 这里替换为你自己的图片路径    input_image = "ml11.png"    output_text = image_to_ascii(input_image, width=100)    if output_text and not output_text.startswith("错误"):        # 打印结果        print(output_text)        # 也可以保存到文件        with open("output.txt""w", encoding="utf-8"as f:            f.write(output_text)        print("转换完成,已保存至 output.txt")    else:        print(output_text)

1. 导入图像处理库

from PIL import Image

        这一行代码的作用是导入Pillow库中的Image模块,后续所有的图片操作(打开、转换、缩放),都需要通过这个模块来实现。可以把它理解为,我们打开了一个“图片处理工具箱”。

2. 定义字符集(核心关键)

ASCII_CHARS = "@%#*+=-:. "

        这是整个脚本的“灵魂”——我们定义了一串从密集到稀疏的字符。为什么要这样排列?因为字符越密集,视觉上越暗;字符越稀疏,视觉上越亮。这样一来,我们就能用这些字符,对应图片中不同明暗的像素,还原图片的层次感。你也可以根据自己的喜好修改字符集,比如加入字母、数字,不同的字符组合会呈现出不同的艺术效果。

3. 灰度值转字符函数

def get_char(gray_value):    """将灰度值映射为字符"""    # 防止索引越界    index = int(gray_value / 255 * (len(ASCII_CHARS) - 1))    return ASCII_CHARS[index]

        当我们把图片转换成灰度图后,每个像素都会对应一个0~255的灰度值(0表示纯黑,255表示纯白)。这个函数的作用,就是将这个灰度值“翻译”成我们定义的字符。

        公式 int(gray_value / 255 * (len(ASCII_CHARS) - 1)) 是核心:它将0~255的灰度值,按比例映射到字符集的下标范围内,避免出现索引越界的错误。比如,纯黑像素(灰度值0)会映射到字符集的第一个字符“@”,纯白像素(灰度值255)会映射到最后一个字符“空格”。

4. 主函数:实现图片到字符画的完整转换

        这个函数是整个脚本的“核心流程”,从打开图片到生成字符画,每一步都在这里完成,我们分步骤拆解:

(1)打开图片并转换为灰度图:

img = Image.open(image_path).convert('L'),通过Image.open()打开指定路径的图片,再用convert('L')将其转换为黑白灰度图——这一步是必要的,因为我们需要通过灰度值来映射字符,彩色信息在这里会被忽略。

(2)调整图片尺寸,保持宽高比:字符的高度和宽度比例约为2:1,如果直接按原图比例缩放,生成的字符画会被拉长、变形。因此,我们通过计算,在保持原图宽高比的基础上,将高度压缩为宽度的0.5倍,确保字符画的比例协调、不畸变。

(3)缩放图片并获取像素数据:img = img.resize((width, new_height), Image.Resampling.LANCZOS) 用高质量的LANCZOS算法缩放图片,确保缩放后图片的轮廓清晰;pixels = img.getdata() 则是获取缩放后图片的所有像素数据,形成一个包含所有灰度值的列表。

(4)拼接字符画:通过循环遍历每一个像素,调用get_char()函数将灰度值转换为对应字符,每拼接完一行(即达到我们设定的宽度),就添加一个换行符,最终形成完整的字符画字符串。

(5)异常处理:except Exception as e 用于捕获运行过程中的错误,比如图片路径错误、图片格式不支持等,避免脚本崩溃,并提示具体的错误信息,方便我们排查问题。

5. 运行脚本,查看结果

if __name__ == "__main__":    # 这里替换为你自己的图片路径    input_image = "ml11.png"    output_text = image_to_ascii(input_image, width=100)    if output_text and not output_text.startswith("错误"):        # 打印结果        print(output_text)        # 也可以保存到文件        with open("output.txt""w", encoding="utf-8"as f:            f.write(output_text)        print("转换完成,已保存至 output.txt")    else:        print(output_text)

        这部分是脚本的“入口”,当我们运行脚本时,会执行这里的代码。你只需要将input_image = "ml11.png" 中的“ml11.png”替换成你自己的图片路径(比如“test.jpg”),设定好字符画的宽度(默认100,数值越大,字符画越清晰,但篇幅也越长),运行脚本后,就能在控制台看到生成的字符画,同时脚本会自动将字符画保存到当前目录的output.txt文件中,方便你后续查看和分享。

实操步骤:5分钟完成第一次转换

        看完代码解析,相信你已经迫不及待想要尝试了,下面我们用简单的3步,完成第一次图片到字符画的转换,新手也能轻松搞定:

    1.  准备一张图片:将你喜欢的图片(建议选择轮廓清晰、对比度较高的图片,效果更好)保存到Python脚本所在的文件夹,记住图片的名称(比如“cat.jpg”)。

    2.  修改脚本:打开编写好的Python脚本,找到input_image = "ml11.png",将双引号内的内容替换成你的图片名称(比如input_image = "cat.jpg"),可以根据需要调整width的值(比如80、120)。

    3.  运行脚本:保存修改后的脚本,打开命令行,切换到脚本所在的文件夹,输入python 脚本名称.py(比如python image_to_ascii.py),按下回车,等待几秒,就能在控制台看到字符画,同时当前文件夹会生成output.txt文件,打开就能查看完整的字符画。

创意拓展:让你的字符画更具个性

        掌握了基础转换方法后,我们还可以通过一些小修改,让字符画更有创意,解锁更多玩法:

    1.  自定义字符集:将ASCII_CHARS替换成你喜欢的字符,比如用“甲乙丙丁”“abcd”,或者加入emoji(注意emoji占两个字符位置,需要调整宽高比),不同的字符集会呈现出完全不同的风格。

 2.  调整字符画尺寸:修改width的值,width越大,字符画越清晰,细节越丰富;width越小,字符画越简洁,更有抽象感。也可以根据需要,手动设定new_height的值,打造不同比例的字符画。

3.  保存为其他格式:除了保存为txt文件,我们还可以将字符画复制到Word、备忘录中,调整字体(建议选择等宽字体,如Courier New、Consolas),设置字体颜色,制作成个性图片。

   4.  批量转换:如果想批量将多张图片转换成字符画,可以添加循环,遍历文件夹中的所有图片,自动完成转换并保存,提高效率。

常见问题排查

在运行脚本的过程中,如果你遇到以下问题,可以参考下面的解决方法:

    1.  报错“ModuleNotFoundError: No module named 'PIL'”:说明Pillow库没有安装成功,重新打开命令行,输入pip install pillow,确保安装完成。

    2.  报错“错误: [Errno 2] No such file or directory: 'ml11.png'”:说明图片路径错误,检查图片是否和脚本在同一个文件夹,图片名称是否正确(包括后缀名,如.jpg、.png)。

    3.  字符画变形严重:可能是宽高比调整不当,可以修改new_height的计算系数(比如0.45、0.55),直到比例协调。

    4.  字符画颜色单一:字符画本身是黑白的,若想实现彩色效果,可以在脚本中添加颜色映射逻辑,将不同灰度值对应不同颜色的字符,后续我们可以进一步拓展。

用Python解锁图像处理新乐趣

        其实,Python图像处理并不复杂,这一个简单的字符画脚本,就涵盖了Pillow库的核心用法、灰度转换、循环逻辑、异常处理等基础知识点,既能帮你快速入门Python图像处理,又能让你亲手制作出极具创意的作品。

        从一张普通图片,到一串充满个性的字符画,每一步都是Python的魔法,也是创意的体现。接下来,不妨拿起你喜欢的图片,动手尝试一下,修改字符集、调整尺寸,打造属于你的专属字符画。如果想进一步拓展,比如实现彩色字符画、批量转换、动图转换等功能,也可以继续深入探索,解锁更多Python图像处理的玩法。

        赶紧动手试试吧,相信你一定会被Python的强大与创意所惊艳!


 代码库:https://gitee.com/zhiops/xecollect-script.git


如果需要进一步了解可以加:

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-07-04 11:05:12 HTTP/2.0 GET : https://f.mffb.com.cn/a/490192.html
  2. 运行时间 : 0.147408s [ 吞吐率:6.78req/s ] 内存消耗:4,785.41kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=25d8e336db3d9572e1f4d5c41bdcd452
  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.001006s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001566s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000737s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000692s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.001209s ]
  6. SELECT * FROM `set` [ RunTime:0.000619s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001532s ]
  8. SELECT * FROM `article` WHERE `id` = 490192 LIMIT 1 [ RunTime:0.006790s ]
  9. UPDATE `article` SET `lasttime` = 1783134313 WHERE `id` = 490192 [ RunTime:0.002172s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 66 LIMIT 1 [ RunTime:0.000699s ]
  11. SELECT * FROM `article` WHERE `id` < 490192 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.001176s ]
  12. SELECT * FROM `article` WHERE `id` > 490192 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.001075s ]
  13. SELECT * FROM `article` WHERE `id` < 490192 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.002360s ]
  14. SELECT * FROM `article` WHERE `id` < 490192 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.003286s ]
  15. SELECT * FROM `article` WHERE `id` < 490192 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.030626s ]
0.151166s