我的问题我的MyBB forum 将php变量传递给MyBB模板,我希望我无法通过$ width y $高度
我可以使用插件在模板中有效地使用PHP,所以这应该有效:
<div style="float:right; display:inline-block; width: <?php echo $width; ?>px; height: <?php echo $height; ?>px; padding-left:10px; padding-right:10px; margin-left:10px; margin-right:10px; none repeat scroll 0% 0%;" >
但不是! echo工作但没有打印!
从控制器方面来看,这是:
$height = 240;
$width = 120;
// ...
eval("\$width = \"\$width\";");
eval("\$height = \"\$height\";");
任何帮助将不胜感激!
答案 0 :(得分:0)
这是因为MyBB要求您将变量设置为全局变量,以使其对模板可见。据我所知,没有其他方法可以传递它。
在定义变量的函数顶部添加以下内容:
global $width, $height;
这使它们可以在功能范围之外访问。有关其工作原理的更多信息,请参见Variable Scope in the PHP documentation。
您还应该仔细检查以确保挂钩在模板传递给eval()
之前已运行。