gpt4 book ai didi

PHP 作为存储在 Mysql 中的模板引擎 - 白名单函数

转载 作者:行者123 更新时间:2023-11-29 06:16:45 25 4
gpt4 key购买 nike

虽然我已经阅读了无数关于使用 PHP 作为模板引擎(使用输出缓冲)的帖子,但我仍在尝试为其提供理由。

因为我想知道是否可以使用 PHP 作为 Web 应用程序的模板引擎(用户将能够自己更改布局)——我仍然没有找到有关以下内容的任何信息:

  • 将模板存储在 MYSQL 数据库中
  • 评估它们
  • 但仅包含列入白名单的函数(仅允许它们访问一组有限的函数 - while、foreach 等...)

有人在寻找相同的解决方案,但可以提供更多信息吗?那就太好了。

最佳答案

如果您不能信任编辑模板的用户,那么最好使用单独的模板语言。

请注意,许多模板语言(例如 Smarty)也提供代码执行功能。您可能需要在引擎的配置中禁用这些功能。

禁用 PHP 中所有潜在危险的函数是一项非常艰巨的任务,而且很容易搞砸。请参阅Exploitable PHP functions

关于PHP 作为存储在 Mysql 中的模板引擎 - 白名单函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6056386/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com