我正在为我的网站创建一个词汇表,该词汇表将显示我网站上的术语定义。
我把一切都搞定了。但我想显示404,如果我的uri段3包含除字母表中的字母以外的任何内容。
我的词汇表网址目前看起来像:
www.mydomain.com/tools/glossary/a
www.mydomain.com/tools/glossary/b
www.mydomain.com/tools/glossary/c
...
如果用户输入的字符串不在字母表中,我想显示404:
例如
www.mydomain.com/tools/glossary/tree
在我的词汇表功能中,我添加了以下内容:
if($this->uri->segment(3)) {
if($this->uri->segment(3) !== 'a' || 'b' || 'c' .... 'z') {
show_404();
}
}
如何让上述代码工作?
如果第3个uri段不等于a和z之间的字母
,则显示404答案 0 :(得分:4)
你可以尝试这个(controller tools.php)
function glossary($letter)
{
if(!preg_match('/^[a-z]$/',$letter))
{
show_404();
}
else
{
echo 'match';
//do something with $letter
}
}
试验:
a 'match'
b 'match'
ab 404
1 404
答案 1 :(得分:0)
答案 2 :(得分:0)
我不使用PHP,但不是|| OR运算符?你需要一个AND运算符。