Codeigniter中URI路由重写

URL重写我一般都是的CI自带的路由,但最近的使用上我遇到一个问题

比如我现在有一个tag控制器,里面包含有个view方法,我现在想把下面的URL

http://xxx.com/tag/view/标签1

http://xxx.com/tag/view/标签2

重写为

http://xxx.com/tag/标签1

http://xxx.com/tag/标签2

如果按照常规的方式配置route,只需要在config/route.php 添加

 

Codeigniter支持中文URL

CI的URL默认不支持中文,会提示 disallowed characters的错误,可以重写URI的方法来实现支持

针对CI2.0版本以上

在application/core文件下,新建MY_URI.php文件,代码如下:

开始使用CodeIgniter的CLI模式做PHP计划任务

CI提供了CLI(命令行接口)的模式,以方便开发者可以通过终端来执行PHP脚本。

传统意义下Windows下的bat以及Linux下的shell配合Cron可以实现基本的计划任务需求。

但是如果设计到与数据库的交互功能或者其他复杂功能,我更倾向使用PHP来做。

CI下使用CLI非常简单。具体可以参考:http://codeigniter.org.cn/user_guide/general/cli.html

任何一个控制器方法 不需要做改动就可以使用CLI模式来执行。

只不过在调用的时候,需要按照下面的命令格式来执行

当然在实际生产环境中使用CLI模式,还是会遇到一些问题。

比如代码中一些$_SERVER的变量将无法读取

解决办法有2钟:

1、使用curl直接请求Web接口 例如 curl http://yourdomain/controller/method

2、对$_SERVER变量或者执行模式做判断,例如我们经常会在config.php中的base_url这么写

优化后

或者