CodeIgniter框架通过URL向控制器传递参数
通过URL传递参数的方法是GET,在CodeIgnter框架中,通过URL有两种方式向控制器传递参数:
- 一种是键值对的形式。
- 一种是类似于文件路径的形式,这个时候,不是以键值对的形式了,我们只传递值。
首先,看第一种键值对的形式,这个就是最常见的,最普通的用法,比如向Hello控制器的index方法传递name="abc",age=30,那么可以向下面这样:
控制器Hello.php的代码如下:
1 2 3 4 5 6 7 8 | <?php defined( 'BASEPATH' ) OR exit ( 'No direct script access allowed' ); class Hello extends CI_Controller { public function index(){ print_r( $_GET ); } } |
浏览器中访问:
1 | http: //localhost/ci/index.php/hello/index?name=abc&age=30 |
得到的结果如下:
1 2 3 4 5 | Array ( [name] => abc [age] => 30 ) |
第二种形式,
1 2 3 4 5 6 7 8 9 | <?php defined( 'BASEPATH' ) OR exit ( 'No direct script access allowed' ); class Hello extends CI_Controller { //为了保证未传参时,程序不会出错,最好为参数设定默认值 public function index( $name = '' , $age = '' ){ echo $name . "___" . $age ; } } |
浏览器中访问:
1 | http: //localhost/ci/index.php/hello/index |
只会输出___
但是访问下面这个URL:
1 | http: //localhost/ci/index.php/hello/index/abc/30 |
那么就会输出:abc___30
从上面的例子中可以看出,控制器中的方法接受的参数,可以是来自从调用这个方法时传递的参,还可以获取URL中的参数,只不过从URL中获取参数时,不用在URL中指定key,直接指定value即可,并且URL中控制器和方法之后的字符串会以 / 分隔,然后按顺序传递给控制器方法。
如需转载,请注明文章出处,谢谢!!!
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 用 C# 插值字符串处理器写一个 sscanf
· Java 中堆内存和栈内存上的数据分布和特点
· 开发中对象命名的一点思考
· .NET Core内存结构体系(Windows环境)底层原理浅谈
· C# 深度学习:对抗生成网络(GAN)训练头像生成模型
· 趁着过年的时候手搓了一个低代码框架
· 本地部署DeepSeek后,没有好看的交互界面怎么行!
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 用 C# 插值字符串处理器写一个 sscanf
· 乌龟冬眠箱湿度监控系统和AI辅助建议功能的实现