잠시 동안 PHP를 사용하여 문자열을 가져 오는 코드를 검색했습니다. 기본적으로 메시지에서 단축 URL을 얻으려고 시도하고 나중에 실제 링크를 찾기 위해 HEAD 요청을 수행하려고합니다.문자열에서 URL 가져 오기
누구나 문자열에서 URL을 반환하는 코드가 있습니까?
미리 감사드립니다. 고스트 개에 대한
편집 : 여기 해결 내가 가진 응답한다
$test = "I am testing this application for http://test.com YAY!";
을 그리고 :
$regex = '$\b(https?|ftp|file)://[-A-Z0-9+&@#/%?=~_|!:,.;]*[-A-Z0-9+&@#/%=~_|]$i';
preg_match_all($regex, $string, $result, PREG_PATTERN_ORDER);
$A = $result[0];
foreach($A as $B)
{
$URL = GetRealURL($B);
echo "$URL<BR>";
}
function GetRealURL($url)
{
$options = array(
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HEADER => true,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_ENCODING => "",
CURLOPT_USERAGENT => "spider",
CURLOPT_AUTOREFERER => true,
CURLOPT_CONNECTTIMEOUT => 120,
CURLOPT_TIMEOUT => 120,
CURLOPT_MAXREDIRS => 10,
);
$ch = curl_init($url);
curl_setopt_array($ch, $options);
$content = curl_exec($ch);
$err = curl_errno($ch);
$errmsg = curl_error($ch);
$header = curl_getinfo($ch);
curl_close($ch);
return $header['url'];
}
을 여기
내가 구문 분석하고 어떤 샘플입니다 자세한 내용은 응답을 참조하십시오. 같은
당신의 예를 보여주세요. 다시 파싱 – ghostdog74