我经常发现自己做这样的快速检查:
if (!eregi('.PHP',$fileName)) { $filename .= '.PHP'; }
但是,由于eregi()
在PHP 5.3中被弃用,代码现在会抛出错误.
还有另一个函数的行为与eregi()完全相同吗?我不知道regexps什么,不想学习,所以preg_match()等将不适用于我.
stristr与eregi达成完全相同的效果(至少在不使用正则表达式时):
if (!stristr($fileName,'.PHP')) $filename.='.PHP';
你也可以这样做一个“假的”eregi:
if (!function_exists('eregi')) { function eregi($find,$str) { return stristr($str,$find); } }
更新:请注意,stristr不接受像eregi这样的正则表达式,对于特定的情况(检查扩展名),最好使用vartec的解决方案.