2013-07-13 4 views
5

나는 약간의 문제가있어 도움이 필요합니다. $ 포스트 [ '텍스트'] 등의 데이터와 동일했다 말한다면 데이터에서 URL 만 얻는 방법

는 : 어떻게 유형 태그에 바로 URL 비트를 만들 수있을 것입니다 ...

"https://stackoverflow.com/blah?blah는 멋진 웹 사이트입니다" 최종 HTML 결과는 다음과 같을 것입니다.

<p><a href="https://stackoverflow.com/blah?blah">https://stackoverflow.com/blah?blah</a> is such a cool website</p> 

저는 멍청한 사람입니다. 저는 실제로 14 살짜리 아이이고 여전히 코드에 익숙하지 않습니다. 그러나 나는 그것을 좋아합니다!

+0

임의의 텍스트를 가져 와서 URL을 찾아 HTML 링크로 바꾸고 싶습니까? – Brad

+0

이미 작성, 테스트 및 디버깅 된 PHP 모듈을 사용하여 HTML을 올바르게 구문 분석하는 방법에 대한 예제는 http://htmlparsing.com/php를 참조하십시오. –

+5

+는 열정적 인 젊은 회원이 StackOverflow에 합류하기를 원합니다. 환영! –

답변

3

정규 표현식을 사용할 수 있습니다.

function make_hyperlink($text) 
{ 
    // match protocol://address/path/ 
    $text = preg_replace("{[a-zA-Z]+://([.]?[a-zA-Z0-9_/-])*}", "<a href=\"\\0\" target='_blank'>\\0</a>", $text); 

    // match www.something 
    $text = preg_replace("{(^|)(www([.]?[a-zA-Z0-9_/-])*)}", "\\1<a href=\"http://\\2\" target='_blank'>\\2</a>", $text); 

    // return $text 
    return $text; 
} 

echo make_hyperlink('http://stackoverflow.com/blah?blah'); 

위 기능을 사용하십시오. 간단한 URL 텍스트의 URL을 대체합니다.

1
<p> <a href="<?=$_POST['text']?>"> <?=$_POST['text']?> </a> is a cool website </p> 
+0

예. var에는 다른 텍스트가 있습니다. 그것은 단지 링크가 아닙니다. 하지만 이미 해결 방법을 찾았습니다. 귀하의 답변을 주셔서 감사합니다! – CALI1198

관련 문제