【问题标题】:how to include and execute php variable with html and other php variables in it如何在其中包含和执行带有 html 和其他 php 变量的 php 变量
【发布时间】:2014-09-24 11:36:47
【问题描述】:

我被困住了... 我有一个变量,其中包含 html(有时是 javascript)和 php 代码(其他变量),并存储在 mysql db 中。 基本上,我要做的就是将变量插入页面-> 什么有效,但 php 代码没有执行,它只是像 txt 一样显示。所以我正在寻找一种插入变量的方法,以便识别和执行php代码(插入变量)..

到目前为止我尝试了什么: (很简单)db中存储的示例代码:

图像变量(new_p_img):

<a href="product.php"><img src="new.png" alt="New Products" width="250" height="250"></a> 

图像显示代码变量(new_p_dis):

<div class="new-products">
<?php echo $new_p_img; ?>
</div>

为了显示在网站上,我尝试了

 <?php echo $new_p_dis; ?>

代码在源代码中完美显示,但 php 回显代码无法识别/执行,其处理方式与普通 txt 相同。 我还尝试通过一个额外的文件来包含它。

示例代码 new-product.php

<?php echo $new_p_img; ?>

为了显示在网站上,我尝试了

<?php echo include('products/new-product.php'); ?>

没有工作...如果我将“new_p_dis”代码直接放入站点或 new-product.php 文件中

<div class="new-products">
<?php echo $new_p_img; ?>
</div>

它工作正常,但我必须重新编码整个网站.....这不是一个选项:(

是否有可能预加载 var "new_p_dis" 添加缺少的 "new_p_img" var,然后将最终代码插入页面?

一个代码示例真的可以帮到我。

谢谢

PS: eval() 不是一个选项 ;)

PPS:上面的代码只是一个简单的例子,真正的代码要复杂得多,vars都是通过php动态创建并存储在数据库中的->我只需要一个起点:)

【问题讨论】:

  • 你认为不使用eval 将如何执行任意字符串?为什么要将代码存储在数据库中?
  • 代码是在从“订单处理软件”导入期间生成并插入的,无法更改....“eval(代码)”的直接用法是我第一次尝试在本地工作,但不允许在托管计划中使用....
  • eval 是答案,句号。另外,请记住“如果 eval 是答案,那么您几乎肯定会问错问题”(Rasmus Lerdorf)。

标签: php variables include execute


【解决方案1】:

实际上,这确实有效......通过解决方法。 我所做的只是创建一个函数,在其中获取存储的变量,添加我需要的内容,然后在我的页面中“调用”它。

function main_p_lnk_shortcode() { 
    global $uf_vars;
    $p_lnk1 = '<a href="' . $uf_vars_lnk . '" title="' . $uf_vars_nam . '"><img src="' . $uf_vars_img . '" alt="" /></a>';
    return $p_lnk1;
  }
 add_shortcode('main_p_lnk', 'main_p_lnk_shortcode');

在这种情况下,我添加了一个 WP-ShortCode

我对所有其他有 php 标签的变量做了同样的事情,加载、操作然后返回,作为直接函数或简码......

【讨论】:

    猜你喜欢
    • 2011-10-05
    • 1970-01-01
    • 2021-07-24
    • 1970-01-01
    • 1970-01-01
    • 2018-02-16
    • 1970-01-01
    • 2012-02-10
    • 2012-09-08
    相关资源
    最近更新 更多