从此
jimport( 'joomla.application.module.helper' );
$modules = JModuleHelper::getModules( 'top' );
echo '<pre>';
print_r( $modules );
echo '</pre>';
其输出该结构
Array
(
[0] => stdClass Object
(
[id] => 25
[title] => Newsflash
[module] => mod_newsflash
[position] => top
[content] =>
[showtitle] => 1
[control] =>
[params] => catid=3
style=random
items=
moduleclass_sfx=
[user] => 0
[name] => newsflash
[style] =>
)
)
我现在调用这个函数是为了让它输出
<?=$modules[0]->content ?>
我想用一条线打电话,但不起作用
<?=JModuleHelper::getModules( 'top' )[0]->content ?>
我可以在getmodule的单一版本上完成它,它很有效,因为它没有封装在数组中。
<?=JModuleHelper::getModule( 'top' )->content ?>
有人知道如何用一行代码深入研究这个数据结构吗?
PHP的reset()
重置数组的内部指针并返回第一个元素。因此,
$modules = reset(JModuleHelper::getModules( 'top' ))->content;
将获得第一个元素的内容。
但是,如果JModuleHelper
返回空数组,则此将失败,原因很明显。不幸的是,它不会悄悄地失败,因为reset()
在提供空数组时返回false
。