php - 使用保存在数据库中的 PHP 代码

标签 php html mysql sql

我有这个代码:

<!DOCTYPE html>
<html>
    <?php require_once('./module/mod_head.php'); ?>
<body>
    <?php require_once('./core/imp/navbar.inc.php'); ?>

    <div class="container" style="margin-bottom: 50px;">
        <?php include('./module/mod_preview.php'); ?>
    </div>

    <div class="container-fluid">
        <?php include_once('./module/mod_block_whoami.php') ?>

        <div class="collapse" id="summaryId">
            <?php include_once('./module/mod_block_summary.php'); ?>
        </div>
    </div>

    <?php require_once('./core/imp/footer.inc.php'); ?>
</body>
</html>

现在此代码已保存在数据库中。

问题是我希望使用该代码,因为它将是我的 index.php 文件中的唯一代码。

但正如我之前所说,它保存在数据库中,为了获取该代码,我需要使用 php,然后代码将保存在 php 变量中并回显如下:

<?php echo "<html><?php echo "<morehtml>blablabla</morehtml>"; ?></html>"; ?>

我想创建一个临时文件,该文件会被代码覆盖,然后包含在index.php 文件或任何需要从数据库获取代码的文件中。

但是我不知道这是否是一个好主意,或者是否有更好的方法从 MySQL 数据库获取 php 代码并使用它。

最佳答案

如果您想使用数据库中的 php 代码,请尝试 eval (将字符串评估为 PHP 代码)。

$sting // your variable with the data from the DB
<?=eval('?>' . $sting . '<?') ?>

但这很危险,从文档来看:

“eval() 语言构造非常危险,因为它允许执行任意 PHP 代码。因此不鼓励使用它。如果您已仔细验证除了使用此构造之外没有其他选择,请特别注意不要将任何用户提供的数据传递到其中,而无需事先对其进行正确验证。”

关于php - 使用保存在数据库中的 PHP 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33845111/

相关文章:

php - 查询 SQL 并格式化为 CSV 的有效方法

html - Font Awesome 图标消失了。奇怪的人物(大商业)

javascript - 后退按钮永远被拦截 - Phonegap/Android

mysql - 在ubuntu上安装mysql后访问被拒绝

MySQL LOAD DATA INFILE 自动增量

php - Laravel Carbon Group 按月

javascript - WordPress Jquery MySQL 插件

php - 防止通过表单覆盖文件上传和MySQL记录?

php - Mysql - 如何在 1 条记录中加入自定义字段标题和数据的表

html - Zurb Foundation 多列网格高度问题