根据在codeigniter中选择的控制器名称显示所有方法名称

时间:2015-11-20 05:18:30

标签: codeigniter

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

我在下面的代码中试过了..

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

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

这里$ controllers是一个包含所有控制器名称的数组。 上面的代码只打印当前类的方法。我想要所有控制器的所有方法。 知道如何做到这一点! 所以

2 个答案:

答案 0 :(得分:1)

我有一个链接可能会列出这些控制器中的所有控制器和方法。希望这可能有所帮助。 Reference Link

答案 1 :(得分:0)

application/core文件夹中按名称My_Controller

创建一个主控制器

代码就是,

<?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

....等等

最后,

使用

从控制器获取所有方法
userselectedcontroller/allMethods

希望这可以帮助你:)

相关问题