我正在为我的项目使用codeigniter,我想将id传递给url:
/资源/方法/ ID
转换成
/资源/方法/ 0
问题是codeigniter忽略0并响应
/资源/方法
对此有何解决方法?
答案 0 :(得分:0)
如果这给您带来麻烦,请在资源控制器中执行以下操作:
public function method($id = 0){
//stuff
}
这样,如果你将id传递给0并不重要,没有id意味着同样的事情,除非这不是你想要的行为。如果您需要以任何方式修改它,只需设置路线。
答案 1 :(得分:0)
codeigniter,而不是PHP忽略id为0的原因是因为PHP的类型杂耍。
0,“”(空字符串)和false都与PHP
相同获取URL段时,如果codeigniter没有看到参数,则返回false。 虽然这可能是你没有获得价值的原因。我从未见过该框架忽略了id。
请记住:
(false == 0)
是真的
虽然(false === 0)
是假的
第一个示例检查两个值是否相等,而第二个示例检查两者是否相等且类型相同
答案 2 :(得分:0)
毕竟有一种简单的方法来解决这种情况(我认为是这样)。
考虑0
异常并将其作为zero
传递给网址,并在控制器中设置一些适当的条件来检查传递的值并相应地运行代码!
/resource/method/zero