我想知道如何将正则表达式实现为以下语句:
if($this->uri->segment(3) !== 'a,b,c...') {
redirect 'tools/glossary';
}
我需要检查uri段的长度是否只有一个字符,并且只有字母顺序。
如果没有,则重定向到术语表页。
这怎么可能??
if (!preg_match('/^[a-z]$/i', $this->uri->segment(3))) {
redirect('tools/glossary');
}
正如其他人回答的那样,preg_match将适合您。但是,为了提供另一种选择,codeigniter在路由规则中接受正则表达式,因此您可以在config/routes.php
中使用类似
$route['somecontroller/someaction/([a-zA-Z])'] = "somecontroller/someaction/$1";
$route['somecontroller/someaction/(:any)'] = "tools/glossary";
避免重定向