ci框架[2.x]版本 设置了路由,方法里面用segment怎么接收参数

问题描述

ci框架[2.x]版本 设置了路由,方法里面用segment怎么接收参数

配置文件里面路由规则是默认的,如下:
$config['uri_protocol'] = 'AUTO';

配置路由规则如下:
$route['special/(d+).html'] = "home/special_detail/$1";

访问地址:http://www.test.cn/special/21.html

在控制器里面接收参数id:
function special_detail(){
$id = $this->uri->segment(3);print_r($id);die;
}

打印结果为空,但是$this->uri->segment(2)打印结果却是21.html,为什么呢?怎么才能用上面的方法接收?

时间: 2024-11-08 21:14:18

ci框架[2.x]版本 设置了路由,方法里面用segment怎么接收参数的相关文章

CI框架支持$_GET的两种实现方法

本文实例讲述了CI框架支持$_GET的两种实现方法.分享给大家供大家参考,具体如下: 首先ci框架在2.0以后就支持GET了,所以使用毫无压力! 1.使用get传递参数的方法: CI会自动将超过URI的两部分作为参数传给方法.可以去看手册:CI框架中文手册 如下:localhost/index.php/jb51/func/a/b 那么控制器中的方法php代码如下: <?php class Jb51 extends CI_Controller { public function func($x,

CI框架常用经典操作类总结(路由,伪静态,分页,session,验证码等)_php实例

本文实例总结了CI框架常用经典操作类.分享给大家供大家参考,具体如下: 1. 超级对象中的URI CI_URI类的解析url的相关信息 直接使用$this->uri可以使用它的相关属性 system/core/URI.php文件中 部分常用属性: (1) 分段获取url相关信息 $this->uri->segment(4); //获取url中pathinfo //的第四段的值 入口文件.php/控制器/动作/参数1/参数2/... (2) 通过方法中的形参传参 需要设默认值和顺序要注意

Win7笔记本设置虚拟路由方法

  Win7笔记本虚拟路由设置方法,这个方法已经经过了测试,适合win7笔记本使用,而且操作起来也很简单,同样是非AD-HOC信号,真正的虚拟路由信号. netsh wlan set hostednetwork mode=allow ssid=IloveLXJ key=1234567895 netsh wlan start hostednetwork ssid是你设置的网络名称,key是密码,netsh wlan start hostednetwork是开启网络. 那么相信看到了命令就懂了如何去

Win7设置虚拟路由方法

  Win7笔记本虚拟路由设置方法,这个方法已经经过了测试,适合win7笔记本使用,而且操作起来也很简单,同样是非AD-HOC信号,真正的虚拟路由信号. netsh wlan set hostednetwork mode=allow ssid=IloveLXJ key=1234567895 netsh wlan start hostednetwork ssid是你设置的网络名称,key是密码,netsh wlan start hostednetwork是开启网络. 那么相信看到了命令就懂了如何去

CI框架3.0设置默认控制器

问题描述 CI框架3.0设置默认控制器 请教一下:为什么在CI框架3.0中设置默认控制器不能这样写啊,页面显示The page you requested was not found? 解决方案 http://blog.sina.com.cn/s/blog_a77576280102vau3.html

CI框架笔记

一.目录结构 ci_demo ├─myapp 应用主目录 │ ├─autoload.php 自定义的自动加载文件(可选) │ ├─myapp.php应用入口文件,拷贝index.php得到,注意修改$application_folder = 'myapp'; │ ├─cache 缓存目录 │ ├─config 配置目录,包括autoload,database,routes等 │ ├─controllers 控制器目录,可以分为api和web部分(命名自定义),也可以不分 │ │ ├─api ap

CI框架中cookie的操作方法分析_php实例

本文实例讲述了CI框架中cookie的操作方法.分享给大家供大家参考.具体分析如下: 第一种设置cookie的方式:采用php原生态的方法设置的cookie的值 复制代码 代码如下: setcookie("user_id",$user_info['user_id'],86500);  setcookie("username",$user_info['username'],86500);  setcookie("password",$user_in

ci框架中cookie的操作程序代码

 代码如下 复制代码 //第一种设置cookie的方式:采用php原生态的方法设置的cookie的值  setcookie("user_id",$user_info['user_id'],86500);  setcookie("username",$user_info['username'],86500);  setcookie("password",$user_info['password'],86500);  //echo $_COOKIE[

php CI框架路由失败问题

问题描述 php CI框架路由失败问题 接受到一个项目,用CI写的.放在本地wamp环境可以执行.但是放到线上linux服务器的时候 发现路由找不到相应的controller以及method. 调试了一会后发现根本原因是,变量_$SERVER['SCRIPT_NAME']在两个环境的值不一样. 比如我访问的域名为localhost/index.php/a/b. 本地环境的$_SERVER['SCRTIPT_NAME'] 值为/index.php,但是线上的值为/index.php/a/b 本地是