Localisation: 1&1 FAQ ->Scripts / Programmation->PHP->Article #11

Hébergement Linux Cet article n'est applicable qu'aux hébergements Linux.

L'information que vous trouverez ci-dessous est donnée uniquement à titre d'information et ne fait pas partie du support proposé par 1&1 Internet
Nous nous dégageons de toutes responsabilités en cas de mauvaise utilisation.
Nous ne pourrons répondre à aucune demande d'information complémentaire concernant ce thème.
Est-ce que la fonction fsockopen() est disponible chez 1&1 ?
La fonction PHP fsockopen() est disponible dans l’ensemble des hébergements Linux chez 1&1 Internet.

Vous pouvez retrouver ci-dessous un exemple d’utilisation de la fonction fsockopen() sur nos installations
Exemple 1: Utilisation de fsockopen()
<?php
function remoteFopen($url){
  $parsed = parse_url($url);
  $fp = fsockopen($parsed['host'], 80, $errno, $errstr, 60);
  if($fp === FALSE){
    trigger_error('- La page '.$url.' n\'a pas pu être téléchargée. Erreur socket n°'.$errno.' : '.$errstr.'.', E_USER_ERROR);
    return false;
  }else{
    fwrite($fp, "GET ".$parsed['path']." HTTP/1.1\r\n");
    fwrite($fp, "Host: ".$parsed['host']."\r\n");
    fwrite($fp, "Referer: ".$parsed['scheme']."://".$parsed['path']."\r\n");
    fwrite($fp, "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)\r\n\r\n");
    $result = '';
    while(!feof($fp)) $result .= fread($fp, 1024);
    fclose($fp);
    if(!preg_match('#^HTTP/(1\.1|1\.0) 200 (OK)?#i', $result)){
      trigger_error('- Le fichier n\'existe pas ou n\'est pas accessible à l\'adresse '.$url.'.', E_USER_ERROR);
      return false;
    }else{
      return preg_replace("#(?:.+)Content-Type: [[:alnum:]_/-]+\r?\n(?:X[\S ]+\r?\n)*\s+(.+)#is", "\\1", $result);
    }
  }
}
?>