Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.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中处理路由器文件中的任务和变量_Php_Joomla - Fatal编程技术网

Php 如何在Joomla中处理路由器文件中的任务和变量

Php 如何在Joomla中处理路由器文件中的任务和变量,php,joomla,Php,Joomla,我已经浏览了网页,并使用下面链接上的说明为我的组件组件列表准备了一个路由器文件 这是我的路由器文件代码 function listingBuildRoute(& $query) { $segments = array(); if(isset($query['view'])) { $segments[] = $query['view']; unset( $query['view']

我已经浏览了网页,并使用下面链接上的说明为我的组件组件列表准备了一个路由器文件

这是我的路由器文件代码

function listingBuildRoute(& $query)
{


     $segments = array();

       if(isset($query['view']))
       {
                $segments[] = $query['view'];
                unset( $query['view'] );
       }





       if(isset($query['task']))
       {
                $segments[] = $query['task'];
                unset( $query['task'] );
       };


       if(isset($query['id']))
       {
                $segments[] = $query['id'];
                unset( $query['id'] );
       };

        if(isset($query['type']))
       {
                $segments[] = $query['type'];
                unset( $query['type'] );
       };

       return $segments;



}

function listingParseRoute($segments)
{


   $vars = array();
       switch($segments[0])
       {
               case 'accomodation':
                       $vars['view'] = 'accomodation';
                        $id = explode( ':', $segments[2] );
                       $vars['type'] = (int) $id[0];
                       break;
               case 'entertainment':
                       $vars['view'] = 'entertainment';
                       $id = explode( ':', $segments[2] );
                       $vars['type'] = (int) $id[0];
                       break;

       }


        switch($segments[1])
       {
               case 'listing':
                       $vars['task'] = 'listing';
                       $vars['task'] =$segments[1];

                       break;
               case 'details':
                       $vars['task'] = 'details';
                       $vars['task'] =$segments[1];

                       break;

       }


       return $vars;




}    
它正在成功地准备URL,例如为任务列表和URL所属的变量类型准备URL

index.php/component/listing/entertainment/listing/11
但是它实际上并没有出现在任务列表中。它只是显示了视图娱乐。我认为解析路由函数调用不正确,但我没有找到正确的解决方案。请帮助我想你需要像使用$item-…>query['view']一样