Сообщение от Андрей Параничев
|
Нет, с этим нету проблем, если на сервере разрешено сокетное подключение.
|
А на всех платных хостингах включена эта возможность? или есть какие либо ограничения? или, как узнать доступно это или нет?
Вот, подправил немного код. Исправил ошибку, и сделал более универсальным:
function par_str($str,$start,$end){
$res = substr($str,strpos($str,$start)+strlen($start),strlen($str));
if ($end!=null) $res = substr($res,0,strpos($res,$end));
echo($res);
return $res;
}
function get_contents($url){
$url_host = par_str($url,"http://","/");
$url_get = par_str($url,$url_host,null);
$fp = fsockopen($url_host, 80, $errno, $errstr, 30);
if ($fp) {
$out = "GET ".$url_get." HTTP/1.1\r\n"
."Host: ".$url_host."\r\n"
."Connection: Close\r\n"
."\r\n";
fwrite($fp, $out);
$result="";
while (!feof($fp)) {
$result .= fgets($fp, 128);
}
$result=substr($result,strpos($result,"\r\n\r\n")+4,strlen($result));
$result=substr($result,strpos($result,"\r\n")+2,strlen($result));
fclose($fp);
return $result;
}
}
а ошибка была у тебя, точку надо поставить, что бы объединить все:
while (!feof($fp)) {
$result .= fgets($fp, 128);
}