2015-11-20 75 views
-1

我在使用CodeIgniter构建的一个网页中有2个下拉列表。第一个下拉列表是控制器名称,第二个是方法名称。我可以拉下所有控制器并在下拉选项中显示他们的名字。现在,当用户从第一个下拉列表中选择控制器名称时,我想显示第二个下拉列表中在该控制器文件上声明的所有方法名称。根据在codeigniter中选择的控制器名称显示所有方法的名称

我已经试过这下面的代码..

foreach ($controllers as $key => $value) { 

    foreach(get_class_methods($value) as $methods){ 
     echo $methods; 
    } 
} 

这里$控制器是所有控制器的名称的数组。上面代码中的 仅打印当前类methods.i想要所有控制器的所有方法。 任何想法如何做到这一点! 所以

回答

1

我有一个链接,可能会给你所有控制器和方法在这些控制器的列表。希望这可能有所帮助。 Reference Link

+0

非常感谢...它工作很好.. –

0

的名字My_Controller

application/core文件夹中创建一个主控制器和代码是,

<?php 
if (!defined('BASEPATH')) 
    exit('No direct script access allowed'); 
class Main_Controller extends CI_Controller { 
    public function __construct() { 
     parent::__construct();   
    }  
    public function allMethods() { 
     print_r(get_class_methods($this)); 
    } 
} 
?> 

你有哪些曾经类获取方法应该扩展该控制器

class A extends Main_Controller { } 
class B extends Main_Controller { } 
class C extends Main_Controller { } 

现在方法allMethods()将被继承到所有控制器

若要从控制器获得的所有功能,

假设用户选择控制器A

这样的呼叫功能,, 假设用户选择控制器A

a/allmethods 

假设用户选择控制器B,

b/allmethods 

....等等

所以最后,

使用Get从控制器的所有方法,

userselectedcontroller/allMethods 

希望这有助于你:)

相关问题