Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/259.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在joomla 3.1.1中实例化控制器_Php_Joomla - Fatal编程技术网

Php 在joomla 3.1.1中实例化控制器

Php 在joomla 3.1.1中实例化控制器,php,joomla,Php,Joomla,我试图实例化一个控制器并执行一些方法,但没有结果:( 有什么想法吗?这行不通,请尝试:JControllerLegacy::getInstance('CONTROLLERNAME')假设您调用的控制器遵循命名约定 例如weblinkscocontrollerweblink以下是控制器实例化代码的形式。您不需要在Joomla 3扩展中使用jimport。Joomla自动加载以J前缀开头的所有类 <?php // No direct access defined( '_JEXEC' ) or

我试图实例化一个控制器并执行一些方法,但没有结果:(


有什么想法吗?

这行不通,请尝试:
JControllerLegacy::getInstance('CONTROLLERNAME')
假设您调用的控制器遵循命名约定


例如
weblinkscocontrollerweblink

以下是控制器实例化代码的形式。您不需要在Joomla 3扩展中使用jimport。Joomla自动加载以
J
前缀开头的所有类

<?php // No direct access
defined( '_JEXEC' ) or die( 'Restricted access' );

//sessions
jimport( 'joomla.session.session' );

//load tables
JTable::addIncludePath(JPATH_COMPONENT.'/tables');

//load classes
JLoader::registerPrefix('Lendr', JPATH_COMPONENT);

//Load plugins
JPluginHelper::importPlugin('lendr');

//application
$app = JFactory::getApplication();

// Require specific controller if requested
if($controller = $app->input->get('controller','default')) {
  require_once (JPATH_COMPONENT.'/controllers/'.$controller.'.php');
}

// Create the controller
$classname  = 'LendrController'.$controller;
$controller = new $classname();

// Perform the Request task
$controller->execute();

请尝试此最新的JOOMLA 3.0扩展示例作为参考。
<?php // No direct access
defined( '_JEXEC' ) or die( 'Restricted access' );

//sessions
jimport( 'joomla.session.session' );

//load tables
JTable::addIncludePath(JPATH_COMPONENT.'/tables');

//load classes
JLoader::registerPrefix('Lendr', JPATH_COMPONENT);

//Load plugins
JPluginHelper::importPlugin('lendr');

//application
$app = JFactory::getApplication();

// Require specific controller if requested
if($controller = $app->input->get('controller','default')) {
  require_once (JPATH_COMPONENT.'/controllers/'.$controller.'.php');
}

// Create the controller
$classname  = 'LendrController'.$controller;
$controller = new $classname();

// Perform the Request task
$controller->execute();