当我通过Jumi包含一个PHP脚本时,它似乎破坏了global关键字。示例:
<?php
$a = 5;
function foo()
{
global $a;
if (isset($a))
echo $a;
else
echo '$a is not set';
}
foo();
?>当我单独运行这个PHP脚本(名为test.php)时,它正确地打印了5。当我在Joomla的一篇文章中通过Jumi运行它时,只包含了以下内容:
{jumi test.php}{/jumi}它打印$a is not set。
这是Jumi或Joomla中的一个bug,还是有一些(联合国)记录在案的方法来解决这个问题?
当我通过Jumi包含一个PHP脚本时,它似乎破坏了global关键字。示例:
<?php
$a = 5;
function foo()
{
global $a;
if (isset($a))
echo $a;
else
echo '$a is not set';
}
foo();
?>当我单独运行这个PHP脚本(名为test.php)时,它正确地打印了5。当我在Joomla的一篇文章中通过Jumi运行它时,只包含了以下内容:
{jumi test.php}{/jumi}它打印$a is not set。
这是Jumi或Joomla中的一个bug,还是有一些(联合国)记录在案的方法来解决这个问题?
UPDATE:如果我在脚本的顶部将$a标记为全局的:
<?php
global $a;
$a = 5;
function foo()
{
global $a;
if (isset($a))
echo $a;
else
echo '$a is not set';
}
foo();
?>test.php可以正常工作,既可以自己运行,也可以通过Jumi实现。我的最佳猜测是Jumi脚本包含在函数上下文中,而不是全局上下文中。
发布于 2011-12-07 22:22:40
您可以尝试一种稍微不同的方法-- 像这样,因为我认为Joomla默认限制范围。
发布于 2013-02-13 15:14:55
在joomla中使用Jumi非常容易,因为它在2.5、3.0版本中得到支持
我有一个解决办法:
{jumi[directory/filename.php]}但是请记住为它创建菜单,以便它可以出现在菜单的onclick事件上。
https://stackoverflow.com/questions/2365777
复制相似问题