php如何防止SQL注入?php防范SQL注入攻击策略

核心策略是使用预处理语句实现SQL逻辑与数据分离,PHP中通过PDO或MySQLi扩展结合参数绑定防止注入,辅以输入验证、最小权限原则和错误信息管控构建多层防御体系。

php如何防止sql注入?php防范sql注入攻击策略

PHP防止SQL注入的核心策略在于将SQL查询的逻辑与数据彻底分离,最有效且推荐的方法是使用预处理语句(Prepared Statements),无论是PDO还是MySQLi扩展都提供了这一功能。同时,严格的输入验证和最小权限原则也是不可或缺的辅助防线。

解决方案

要真正防范SQL注入,我们的思路必须从“清洗输入”转向“隔离输入”。想象一下,你有一张表格,上面写着“姓名:[用户输入]”,如果你直接把用户输入填进去,用户可能写“张三;DROP TABLE users;”,那你就麻烦了。但如果你有两张表格,一张写着“查询用户名为X的记录”,另一张表格专门用来填X的值,那么用户无论在X里填什么,都只能被当作一个值,而不是SQL指令的一部分。这,就是预处理语句的精髓。

在PHP中,这通常通过PDO(PHP Data Objects)或MySQLi扩展实现。以PDO为例,它的工作流程是这样的:

准备查询: 你先向数据库发送一个带有占位符的SQL查询模板(例如

SELECT * FROM users WHERE username = :username AND password = :password

)。数据库会预编译这个查询,知道哪里是参数,哪里是SQL指令。绑定参数: 接着,你将实际的用户数据绑定到这些占位符上。PDO会自动处理数据的转义和类型匹配,确保它们被视为纯粹的数据,而不是可执行的SQL代码。执行查询: 最后,执行这个已经准备好的查询。

这是一个使用PDO的简单例子:

立即学习“PHP免费学习笔记(深入)”;

 PDO::ERRMODE_EXCEPTION,        PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,        PDO::ATTR_EMULATE_PREPARES   => false, // 禁用模拟预处理,确保真实预处理    ];    $pdo = new PDO($dsn, $username, $password, $options);    $user_input_username = $_POST['username'] ?? ''; // 从用户获取的输入    $user_input_password = $_POST['password'] ?? '';    // 准备SQL语句,使用命名占位符    $stmt = $pdo->prepare("SELECT id, username FROM users WHERE username = :username AND password = :password");    // 绑定参数    $stmt->bindParam(':username', $user_input_username);    $stmt->bindParam(':password', $user_input_password);    // 执行查询    $stmt->execute();    // 获取结果    $user = $stmt->fetch();    if ($user) {        echo "登录成功,欢迎 " . htmlspecialchars($user['username']) . "!";    } else {        echo "用户名或密码错误。";    }} catch (PDOException $e) {    error_log("数据库错误: " . $e->getMessage()); // 记录错误,不直接显示给用户    echo "系统错误,请稍后再试。";}?>

这里特别强调

PDO::ATTR_EMULATE_PREPARES => false

,这能确保数据库执行真正的预处理,而不是让PDO在PHP端模拟处理,这在某些情况下能提供更强的安全性。

除了预处理语句,输入验证也是一道重要的防线。虽然它不能直接防止SQL注入(因为预处理语句已经做到了),但它能确保进入系统的数据符合预期格式和类型,从而防止其他类型的漏洞,并提高数据质量。例如,如果一个字段只接受数字,就应该严格检查用户输入是否为数字,而不是直接将其传递给数据库。

filter_var()

函数和正则表达式是进行输入验证的有力工具

最后,数据库用户的最小权限原则至关重要。你的PHP应用连接数据库时使用的用户,应该只拥有它完成任务所必需的最低权限。例如,一个用于展示文章的网站,数据库用户可能只需要

SELECT

权限,而不需要

INSERT

UPDATE

DELETE

权限,更不应该有

DROP

ALTER

权限。这样,即使应用不幸被攻破,攻击者也无法通过SQL注入执行破坏性的操作。

为什么直接拼接字符串会给SQL注入留下可乘之机?

传统的SQL查询构建方式,即直接将用户输入的数据通过字符串拼接的方式嵌入到SQL语句中,是SQL注入漏洞的根本原因。这种做法的危险性在于,它模糊了SQL代码和数据的界限。当数据库接收到这样的查询时,它无法区分哪部分是开发者意图的SQL指令,哪部分是用户提供的数据。

举个例子,假设你的PHP代码是这样的:

$sql = "SELECT * FROM users WHERE username = '" . $_GET['username'] . "' AND password = '" . $_GET['password'] . "'";

如果一个正常用户输入

username=john

password=secret

,那么查询会变成:

SELECT * FROM users WHERE username = 'john' AND password = 'secret'

,这没问题。

但如果恶意用户在

username

字段输入

admin' OR '1'='1

,而

password

字段随意输入,例如

whatever

,那么拼接后的SQL语句就会变成:

SELECT * FROM users WHERE username = 'admin' OR '1'='1' AND password = 'whatever'

这条语句的逻辑被完全改变了。

'1'='1'

永远为真,这意味着条件

username = 'admin' OR '1'='1'

将始终为真,无论

admin

用户是否存在,也无论密码是否正确。攻击者可以绕过身份验证,以管理员身份登录(如果admin是第一个匹配的用户)。

更糟糕的是,攻击者还可以利用注释符(如

--

#

)来截断查询的其余部分,例如:

username=admin' --

这样拼接后的SQL会变成:

SELECT * FROM users WHERE username = 'admin' -- ' AND password = 'whatever'
--

后面的内容被视为注释,数据库会忽略它。这使得攻击者可以简单地通过提供一个有效的用户名(或猜测一个),然后注释掉密码验证部分,从而轻松登录。

这种直接拼接字符串的方式,本质上是信任了所有用户输入,并将其视为“干净”的数据。而SQL注入的原理,就是利用这种信任,将恶意数据伪装成合法的SQL代码片段,从而改变原始查询的意图,执行攻击者想要的操作,例如读取敏感数据、修改数据、删除数据甚至执行操作系统命令(取决于数据库和配置)。

PHP中除了预处理语句,还有哪些辅助性的防御措施?

虽然预处理语句是防范SQL注入的黄金标准,但我们不能把所有鸡蛋都放在一个篮子里。在PHP的开发实践中,还有一些辅助性的防御措施,它们可以作为多层防御体系的一部分,共同提升应用的安全性。

输入验证与过滤:这听起来有点像老生常谈,但它确实是第一道防线。预处理语句解决的是SQL注入问题,但输入验证解决的是数据本身的有效性和完整性问题。例如,如果一个用户ID应该是整数,你就应该确保用户输入的是整数,而不是字符串或其他非预期内容。

类型检查和转换: 对于数字类型,使用

intval()

,

floatval()

进行强制转换。

filter_var()

函数: PHP内置的

filter_var()

函数提供了强大的数据过滤和验证功能,例如

filter_var($input, FILTER_VALIDATE_EMAIL)

验证邮箱

filter_var($input, FILTER_SANITIZE_STRING)

清理字符串(尽管对于SQL注入,这不如预处理安全)。正则表达式: 对于复杂的格式要求,如用户名、密码强度、电话号码等,正则表达式是精确验证的利器。白名单验证: 永远优先使用白名单验证,即只允许符合特定模式或预设值的数据通过,而不是试图阻止所有可能的恶意输入(黑名单)。

错误信息管理:在生产环境中,绝不能向用户直接显示详细的数据库错误信息。这些错误信息(如SQL语法错误、表名、列名、数据库路径等)可能会泄露数据库结构和配置的敏感信息,为攻击者提供宝贵的线索。

禁用详细错误显示:

php.ini

中设置

display_errors = Off

,并确保在代码中捕获数据库异常(如PDOException),只向用户显示通用的错误消息(如“系统错误,请稍后再试”)。记录错误日志: 将详细的错误信息记录到服务器的日志文件中(例如使用

error_log()

),供开发者和管理员进行排查和分析。

Web应用防火墙 (WAF):WAF是部署在Web服务器前端的安全设备或软件,它通过分析HTTP请求和响应来识别并阻止常见的Web攻击,包括SQL注入。WWAF可以作为应用层面的额外保护,即使应用代码中存在一些漏洞,WAF也可能在请求到达应用之前将其拦截。常见的WAF有ModSecurity等。它提供了一个外部的、独立于应用代码的防御层。

数据库用户的最小权限原则:这是非常关键的一点,也是一种“纵深防御”的理念。即使SQL注入不幸发生,如果数据库用户只有最低限度的权限,攻击者所能造成的损害也会被大大限制。

专用用户: 为每个应用或每个功能模块创建专用的数据库用户。精细化权限: 仅授予这些用户执行其功能所需的

SELECT

,

INSERT

,

UPDATE

,

DELETE

权限,避免授予

DROP

,

ALTER

,

GRANT

,

FILE

等高危权限。例如,一个只用于读取数据的API,其数据库用户就不应该有任何写入权限。

这些辅助措施并非替代预处理语句,而是与其协同工作,共同构建一个更健壮、更安全的PHP应用环境。

在实际项目中,如何确保团队成员都能遵循安全的PHP编码实践?

在实际的项目开发中,仅仅知道安全的编码实践是不够的,更重要的是如何将其落地,并确保整个团队都能持续遵循。这需要一套系统化的方法,将安全理念融入到开发流程的各个环节。

建立并强制执行编码规范和安全策略:明确的编码规范是基石。团队应该共同制定一份详细的PHP安全编码规范,其中必须明确规定:

所有数据库交互必须使用预处理语句(PDO或MySQLi),并给出具体的代码示例。严格执行输入验证和输出编码(如

htmlspecialchars()

),并指定何时何地使用。禁止在生产环境中直接显示详细错误信息。数据库用户权限管理的要求。这些规范应该被视为“硬性要求”,并通过代码审查和自动化工具来强制执行。

持续的开发者安全培训:安全知识是不断更新的,新成员加入团队也需要补齐这块短板。定期组织开发者安全培训,内容应包括:

常见漏洞原理: 深入理解SQL注入、XSS、CSRF等漏洞的攻击原理和危害。安全编码最佳实践: 结合具体项目场景,讲解如何编写安全的代码。安全工具使用: 介绍静态代码分析工具、动态应用安全测试工具等。培训不应只停留在理论层面,最好能结合实际案例和动手实践,让开发者有更深刻的体会。

强制性的代码审查(Code Review):代码审查是发现安全漏洞和提升代码质量的有效手段。在每次代码合并(Merge Request/Pull Request)之前,强制进行代码审查。审查时,除了功能正确性,更要关注安全性:

SQL查询是否使用了预处理语句?用户输入是否经过了适当的验证和过滤?敏感数据是否进行了加密处理?错误处理是否符合规范?鼓励资深开发者或安全专家参与审查,提供专业的安全反馈。

引入自动化安全测试工具:人工审查总有疏漏,自动化工具可以作为有力的补充。

静态应用安全测试 (SAST) 工具: 在代码提交或构建阶段,对源代码进行扫描,自动发现潜在的安全漏洞,如未使用的预处理语句、不安全的函数调用等。PHPStan、Psalm等静态分析工具,配合安全插件,可以提供这方面的能力。动态应用安全测试 (DAST) 工具: 在应用运行阶段,模拟攻击者的行为,对运行中的应用进行黑盒测试,发现运行时漏洞。OWASP ZAP、Burp Suite等工具可以在CI/CD流程中集成。

建立安全反馈和响应机制:安全不是一蹴而就的,而是持续改进的过程。

漏洞报告渠道: 建立内部漏洞报告机制,鼓励开发者和测试人员报告发现的安全问题。快速响应: 对发现的安全漏洞,要建立快速响应和修复流程,避免漏洞长时间存在。事后分析: 对每次安全事件进行复盘分析,总结经验教训,更新安全策略和培训内容。

通过将这些措施融入到日常的开发流程和文化中,可以有效提升团队整体的安全意识和编码水平,从而构建出更健壮、更安全的PHP应用。这不仅仅是技术问题,更是一种管理和文化问题。

以上就是php如何防止SQL注入?php防范SQL注入攻击策略的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1320526.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
php如何将变量传递到闭包中?PHP闭包use关键字变量传递
上一篇 2025年12月12日 06:53:12
php如何配置Nginx以运行PHP应用_Nginx下PHP环境配置指南
下一篇 2025年12月12日 06:53:27

相关推荐

  • 手机淘宝怎么上拍品?手机淘宝怎么上拍品视频

    手机淘宝怎么上拍品?手机淘宝怎么上拍品视频手机淘宝怎么上拍品?手机淘宝怎么上拍品视频手机淘宝怎么上拍品?手机淘宝怎么上拍品视频手机淘宝怎么上拍品?手机淘宝怎么上拍品视频

    首先打开手机淘宝进入“我是商家”,通过“发布宝贝”填写信息并上传图片完成商品发布;接着在“素材中心”上传不超过500MB的MP4格式视频,并将视频链接插入商品详情;也可使用千牛App,在发布商品时直接添加视频,确保封面清晰,最后提交发布即可。 如果您想在手机淘宝上发布商品或上传拍品视频,但不清楚具体…

    2026年9月24日 用户投稿
    200
  • UC浏览器如何设置默认下载工具_UC浏览器调用第三方下载器设置方法

    UC浏览器如何设置默认下载工具_UC浏览器调用第三方下载器设置方法UC浏览器如何设置默认下载工具_UC浏览器调用第三方下载器设置方法UC浏览器如何设置默认下载工具_UC浏览器调用第三方下载器设置方法UC浏览器如何设置默认下载工具_UC浏览器调用第三方下载器设置方法

    首先开启UC浏览器的第三方下载权限,进入设置→下载设置→启用“使用第三方下载工具”;然后在默认下载工具中选择目标应用如IDM+或ADM;若未显示可选应用需确认安装并刷新列表;还可通过系统设置→应用管理→默认应用→下载管理器中指定默认下载器;对于不支持直接绑定的版本,可用Tasker或Auto.js等…

    2026年9月24日 用户投稿
    100
  • 怎样备份和恢复Debian邮件服务器数据

    备份和恢复debian邮件服务器数据的方法取决于邮件服务器的具体配置和使用的软件。以下是一些通用的步骤和建议: 壁纸样机神器 免费壁纸样机生成 0 查看详情 备份步骤 确定备份内容:首先,确定需要备份的数据类型,例如邮件内容、用户信息、配置文件等。使用备份工具:根据邮件服务器的软件选择合适的备份工具…

    2026年9月24日
    000
  • 怎么用豆包AI帮我实现CQRS模式 3步教你用AI分离读写模型

    怎么用豆包AI帮我实现CQRS模式 3步教你用AI分离读写模型怎么用豆包AI帮我实现CQRS模式 3步教你用AI分离读写模型怎么用豆包AI帮我实现CQRS模式 3步教你用AI分离读写模型怎么用豆包AI帮我实现CQRS模式 3步教你用AI分离读写模型

    实现cqrs模式可通过三步借助豆包ai快速完成:一、理清业务场景,将写操作(如用户下单)与读操作(如查看订单列表)分离,可复制代码给豆包ai分析归类;二、让豆包ai生成基础结构代码,输入类似“基于cqrs的订单管理系统,用python flask实现”的指令,获取命令处理器、查询处理器等模块模板;三…

    2026年9月24日 用户投稿
    000
  • WPS如何制作个人简历_WPS简历模板选择与内容填写教程

    WPS如何制作个人简历_WPS简历模板选择与内容填写教程WPS如何制作个人简历_WPS简历模板选择与内容填写教程WPS如何制作个人简历_WPS简历模板选择与内容填写教程WPS如何制作个人简历_WPS简历模板选择与内容填写教程

    使用WPS制作简历需先选择合适模板,填写个人信息、求职意向、教育背景、工作经历等内容,突出成果与技能,调整格式后导出为PDF。关键在于内容真实、条理清晰、重点突出,便于HR快速识别优势。 在求职过程中,一份清晰、专业的简历至关重要。WPS Office 提供了多种简历模板和便捷的编辑功能,帮助用户快…

    2026年9月24日 用户投稿
    300
  • mysql下载初始化数据库失败怎么回事

    mysql下载初始化数据库失败怎么回事mysql下载初始化数据库失败怎么回事mysql下载初始化数据库失败怎么回事mysql下载初始化数据库失败怎么回事

    MySQL 初始化数据库失败的原因包括:1. 系统权限不足;2. 安装文件损坏;3. 防火墙或安全软件阻止连接;4. 数据库端口冲突;5. 磁盘空间不足;6. 操作系统版本不兼容;7. 环境变量问题;8. 损坏的配置文件;9. 之前的 MySQL 安装残留;10. 其他错误。请检查这些原因并采取相应…

    2026年9月24日 用户投稿
    000
  • 星纪魅族万志强回应魅族 22 影像升级:10 月还会有 OTA

    星纪魅族万志强回应魅族 22 影像升级:10 月还会有 OTA星纪魅族万志强回应魅族 22 影像升级:10 月还会有 OTA星纪魅族万志强回应魅族 22 影像升级:10 月还会有 OTA星纪魅族万志强回应魅族 22 影像升级:10 月还会有 OTA

    10 月 13 日,星纪魅族集团中国区 cmo 万志强对用户认可魅族 22 手机影像表现作出回应。他表示,本月还将迎来一次 ota 更新,届时魅族 22 的影像能力有望再度升级。 魅族 22 据 CNMO 消息,有用户反馈称:尽管魅族 22 在拍照方面并非顶尖水准,但在短短几个月内已达到主流影像旗舰…

    2026年9月24日 用户投稿
    000
  • 袋鼠数据库工具 8.90.1 版已上线

    袋鼠数据库工具 8.90.1 版已上线袋鼠数据库工具 8.90.1 版已上线袋鼠数据库工具 8.90.1 版已上线袋鼠数据库工具 8.90.1 版已上线

    袋鼠数据库工具 是一款由 ai 驱动的主流数据库系统客户端,支持多种数据库类型,包括 mariadb、mongodb、mysql、oracle、postgresql、redis、sqlite、sqlserver 等,具备建表、数据查询、模型设计、结构同步、数据导入导出等丰富功能。兼容 windows…

    2026年9月24日 用户投稿
    000
  • 使用 Appium 实现 Gmail OTP 验证自动化

    使用 Appium 实现 Gmail OTP 验证自动化使用 Appium 实现 Gmail OTP 验证自动化使用 Appium 实现 Gmail OTP 验证自动化使用 Appium 实现 Gmail OTP 验证自动化

    本文档旨在指导开发者如何使用 Appium 自动化测试移动应用中的 Gmail OTP (One-Time Password) 验证流程。我们将探讨如何通过 Appium 定位 OTP 输入框,并使用获取到的 OTP 值进行输入,从而完成验证流程的自动化。 定位 OTP 输入框 在 Appium 中…

    2026年9月24日 用户投稿
    200
  • Java程序Ubuntu上如何备份

    在ubuntu上备份java程序,你可以遵循以下步骤: 确定备份位置:首先,你需要确定一个安全的位置来存储备份文件。这可以是一个外部硬盘、网络驱动器或其他任何可靠的存储设备。 打包Java项目:你可以使用tar命令将整个Java项目打包成一个压缩文件。例如,如果你的项目位于/home/usernam…

    2026年9月24日
    000
  • 抖音怎么看直播回放?小米14抖音怎么看别人的直播回放

    短视频平台已成为现代生活的重要组成部分。抖音作为国内领先的短视频平台,凭借其独特的直播功能吸引了众多用户。然而,有时因时间冲突等原因未能及时观看直播,令人遗憾。本文将为您深入解析抖音直播回放功能,助您不错过任何精彩瞬间。 一、抖音直播回放的优势 1. 再次欣赏 通过抖音直播回放,用户可在直播结束后随…

    2026年9月24日
    000
  • AI工具+自动发布系统:打造不熬夜的新媒体工作流

    AI工具+自动发布系统:打造不熬夜的新媒体工作流AI工具+自动发布系统:打造不熬夜的新媒体工作流AI工具+自动发布系统:打造不熬夜的新媒体工作流AI工具+自动发布系统:打造不熬夜的新媒体工作流

    ai工具和自动发布系统能高效提升新媒体运营效率,解放时间和精力。①ai可生成文案、分析数据、优化内容;②自动发布系统支持定时发布,避免遗漏;③选择ai工具需明确需求、试用对比;④使用时注意平台兼容性、账号安全;⑤配合标准化流程、批量处理等技巧,兼顾质量与效率。 ☞☞☞AI 智能聊天, 问答助手, A…

    2026年9月24日 用户投稿
    000
  • mysql下载初始化数据库失败怎么解决

    mysql下载初始化数据库失败怎么解决mysql下载初始化数据库失败怎么解决mysql下载初始化数据库失败怎么解决mysql下载初始化数据库失败怎么解决

    MySQL 初始化数据库失败可通过以下步骤解决:1. 检查安装程序版本;2. 确保管理员权限;3. 关闭其他应用程序;4. 重新配置 MySQL 配置文件(取消注释 innodb_flush_log_at_trx_commit 并设置 innodb_file_per_table、innodb_log…

    2026年9月24日 用户投稿
    000
  • FydeOS v21 发布,升级至 r138,更强的启动器、即圈即搜和无障碍功能

    FydeOS v21 发布,升级至 r138,更强的启动器、即圈即搜和无障碍功能FydeOS v21 发布,升级至 r138,更强的启动器、即圈即搜和无障碍功能FydeOS v21 发布,升级至 r138,更强的启动器、即圈即搜和无障碍功能FydeOS v21 发布,升级至 r138,更强的启动器、即圈即搜和无障碍功能

    我们隆重推出 FydeOS v21:Sunlit Epiphany 正式版本!此次发布带来了众多全新功能、更流畅的操作体验以及更强的系统稳定性——致力于为你打造更加高效且精致的使用感受。本次更新还将底层 Chromium OS 从 r132 升级至 r138,让你第一时间获得最新的性能优化与安全补丁…

    2026年9月24日 用户投稿
    000
  • windows怎么查看端口被哪个进程占用_查看端口占用进程的方法

    windows怎么查看端口被哪个进程占用_查看端口占用进程的方法windows怎么查看端口被哪个进程占用_查看端口占用进程的方法windows怎么查看端口被哪个进程占用_查看端口占用进程的方法windows怎么查看端口被哪个进程占用_查看端口占用进程的方法

    使用netstat命令可查端口占用,通过PID和tasklist找到对应进程;2. PowerShell用Get-NetTCPConnection和Get-Process获取进程详情;3. 资源监视器图形化查看监听端口及进程名;4. 第三方工具TcpView实时显示并管理端口占用。 如果您在使用Wi…

    2026年9月24日 用户投稿
    100
  • VSCode如何设置代码缩进和制表符 VSCode缩进与制表符的自定义调整方法

    要解决vscode缩进混乱问题,需将”editor.detectindentation”设为false,避免自动检测干扰;2. 统一使用空格或制表符的关键在于团队一致性,推荐通过settings.json明确设置”editor.insertspaces&#8221…

    2026年9月24日
    100
  • 如何在Java中实现CompletableFuture异步任务

    CompletableFuture 提供非阻塞异步编程,支持链式调用与任务组合,通过 supplyAsync/runAsync 创建任务,thenApply/thenAccept/thenRun 连接操作,allOf/anyOf 管理多任务,exceptionally/handle 处理异常,避免阻…

    2026年9月24日
    1100
  • DeepSeek-V3.2-Exp 发布,训练推理提效,API 同步降价

    DeepSeek-V3.2-Exp 发布,训练推理提效,API 同步降价DeepSeek-V3.2-Exp 发布,训练推理提效,API 同步降价DeepSeek-V3.2-Exp 发布,训练推理提效,API 同步降价DeepSeek-V3.2-Exp 发布,训练推理提效,API 同步降价

    深度求索正式推出 deepseek-v3.2-exp 模型,该版本为实验性(experimental)更新。 作为通向新一代架构的过渡性尝试,V3.2-Exp 在 V3.1-Terminus 的基础上集成了 DeepSeek Sparse Attention(DSA),引入了一种创新的稀疏注意力机制…

    2026年9月24日 用户投稿
    500
  • 全彩3D漫画汉化资源汇总_ACG漫画在线观看地址

    全彩3D漫画汉化资源汇总_ACG漫画在线观看地址全彩3D漫画汉化资源汇总_ACG漫画在线观看地址全彩3D漫画汉化资源汇总_ACG漫画在线观看地址全彩3D漫画汉化资源汇总_ACG漫画在线观看地址

    全彩3D漫画汉化资源可通过manwa.size/booklist平台获取,该网站汇集日漫、韩漫及国创全彩漫画,支持下拉式阅读,界面简洁且适配多端,无需下载即可在线流畅观看。 全彩3D漫画汉化资源汇总_ACG漫画在线观看地址在哪里?这是不少网友都关注的,接下来由PHP小编为大家带来全彩3D漫画汉化资源…

    2026年9月24日 用户投稿
    600
  • TradingAgents-CN— 中文多智能体金融交易决策框架

    TradingAgents-CN— 中文多智能体金融交易决策框架TradingAgents-CN— 中文多智能体金融交易决策框架TradingAgents-CN— 中文多智能体金融交易决策框架TradingAgents-CN— 中文多智能体金融交易决策框架

    TradingAgents-CN是什么 tradingagents-cn是基于多智能体大模型的中文金融交易决策框架,在tauricresearch/tradingagents的基础上进行了开发,为中文用户提供了完整的文档体系和本地化支持。框架模拟真实交易公司的专业分工和协作决策流程,通过多个专业化a…

    2026年9月24日 用户投稿
    800

发表回复

登录后才能评论
关注微信