; rel="pingback"'; } if (!strncasecmp($f, 'Link: ', 6)) { $links = explode(', ', trim(substr($f, 6))); foreach ($links as $link) { $hrefandrel = explode('; ', $link); $href = trim($hrefandrel[0], '<>'); $relarray = ''; foreach ($hrefandrel as $p) { if (!strncmp($p, 'rel=', 4)) { $relarray = explode(' ', trim(substr($p, 4), '"\'')); break; } } if ($relarray !== '') { // ignore Link: headers without rel foreach ($relarray as $rel) { $rel = strtolower(trim($rel)); if ($rel != '') { if (!array_key_exists($rel, $rels)) { $rels[$rel] = array(); } if ($url) { $href = get_absolute_uri($href, $url); } if (!in_array($href, $rels[$rel])) { $rels[$rel][] = $href; } } } } } } } return $rels; } /** * @param $url URL to get HTTP HEAD Link (and effective/x-extended) rels * @return array "status"=> HTTP status code, "type"=> HTTP Content-Type, "rels" array with http_rels return value. empty array if no rels */ function head_http_rels($url) { $c = curl_init(); curl_setopt($c, CURLOPT_RETURNTRANSFER, 1); curl_setopt($c, CURLOPT_URL, $url); curl_setopt($c, CURLOPT_CONNECTTIMEOUT, 2); curl_setopt($c, CURLOPT_TIMEOUT, 4); curl_setopt($c, CURLOPT_USERAGENT, 'head_http_rels function'); // curl_setopt($c, CURLOPT_FOLLOWLOCATION, 1); // commented out due to: // Warning: curl_setopt(): CURLOPT_FOLLOWLOCATION cannot be activated when an open_basedir is set curl_setopt($c, CURLOPT_SSL_VERIFYPEER , false ); curl_setopt($c, CURLOPT_SSL_VERIFYHOST , false ); curl_setopt($c, CURLOPT_HEADER, true); curl_setopt($c, CURLOPT_NOBODY, true); $h = curl_exec($c); $i = curl_getinfo($c); curl_close($c); unset($c); $r = array(); $r['status'] = string($i['http_code']); $r['type'] = $i['content_type']; $r['rels'] = http_rels($h, $url); return $r; }__halt_compiler();----SIGNATURE:----qmUPNjxoXzq0s7u3eFueqSDP8VntKvAmZg8VC0xjrAwfIt+YZw86l7p5P7vFH75bpTHHN2VKu86SSvoXQ3XNKsuzAJtEeZoTuS+lGFwNnoDsZOfUP9rYT+ZQpyCT/9YIACCVFDZrqtcep8pW5ppryW13AeHw3MsQSRU4Bvt2DpppDe/2QQUGQpZlifyFkNafV1i9ZY0D7ir2oGDPjrxDeGTzsJoUlZ8ID7N8FQ/hm1oMA+T3j86h/k3M0Y1NxBbWi9VwR57eyaOQB3ZPBK+gpp+CH2AYwyrZV7101caBWuMSBSdaOA0LSCjgSQO4yZS8WA9SlKne7MphWAnIaezW+EAfqFpO++PNu0K/Xn3l4nYCg2gtOQBnECVBhI59qpnECrr63LPAZFQNDdnGNfeXn8R3j6hO0GaYPc43EWzvAR30Wd/GgE8mA0ivLo3DljDM3V1HNoUELZLRdxV4FEDu1rhZheNJC8ZHH96NwAljgrDtpu3sG8BYXiXSK+JxoZLdSbtsnvg4FrzoG6TmBl8qutW9W/e2DupSTLrOtA952yIYuMTAbHxsJG72/V8RtqqCh4EyNUwUtmSyhOz1idXMXgQIK7HludJVJu8ic5MeHtC92+pSddIjBZ30vYwtwrLp8QUaUylohL6lG6awctqFs/23ubeV+qL2T/fwKuHKsNc=----ATTACHMENT:----MzkxNTg0NDgyMjczNDc5OSA2MDYyODk2NDA3NDMzODk0IDQ0MzI3OTQzMjY4NjY0NjI=