iis下,调用php静态方法,传参参数个数不对,iis报500错误,求解!!!

阿不阿 2016-12-31 02:12:11
下面是php代码,有一个类的静态方法,如下:
 /*
* 验证输入的网址
* @param string $url:要匹配的网址
* @param string $base:模型网址,如taobao.com,jd.com
* @return bool
*/
public static function is_url($url,$base)
{
//将网址转换为小写
if(!empty($base)){
$base = strtolower($base);
}
//淘宝和天猫,共享域名
if($base=='taobao.com' || $base=='tmall.com'){
$base = "(taobao.com)|(tmall.com)";
}
$chars = "/((^http)|(^https)):\/\/(\S)+($base)(\S)+/"; //http(https)://***$base***
if (preg_match($chars, $url))
{
return true;
}
return false;
}

调用这个方法的时候,如果不传$base参数,会报语法错误,只有iis才有这种问题,而且好像只有某个iis版本才会,求大神指导怎么解决、??
更多
...全文
236 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuzuning 2016-12-31
  • 打赏
  • 举报
回复
function is_url($url,$base) 你定义了两个参数,调用时就要传递两个参数。否则就要报错,任何 php 版本都是一样 如果你想缺省第二个参数,那么可以这样定义 function is_url($url,$base='')

20,359

社区成员

发帖
与我相关
我的任务
社区描述
“超文本预处理器”,是在服务器端执行的脚本语言,尤其适用于Web开发并可嵌入HTML中。PHP语法利用了C、Java和Perl,该语言的主要目标是允许web开发人员快速编写动态网页。
phpphpstorm 技术论坛(原bbs)
社区管理员
  • 开源资源社区
  • phpstory
  • xuzuning
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧