failed to open stream: HTTP request failed! HTTP/1.1 400

$sign =1;
$url = "http://api.yunzhixin.com:11140/txp/sms/send?sign={$sign}&params=世界你好";
$result = file_get_contents($url);

当url里面包含有中午就报failed to open stream: HTTP request failed! HTTP/1.1 400 错误

解决方法用下url编码函数:

function cn_urlencode($url){
    $pregstr = "/[\x{4e00}-\x{9fa5}]+/u";//UTF-8中文正则
    if(preg_match_all($pregstr,$url,$matchArray)){//匹配中文,返回数组
        foreach($matchArray[0] as $key=>$val){
            $url=str_replace($val, urlencode($val), $url);//将转译替换中文
        }
        if(strpos($url,' ')){//若存在空格
            $url=str_replace(' ','%20',$url);
        }
    }
    return $url;
}

Pasa吴技术博客
请先登录后发表评论
  • latest comments
  • 总共0条评论