2012-05-10 3 views
2

내 사이트에 자동 해결 솔루션을 만들고 싶습니다. 그것은 Username에 관한 것입니다. 문자열에 사용자 이름이 있으면 프로파일에 대한 링크를 만들어야합니다. 그들에게 식별자와 정규식 저점 그것의 종류로 표시 안함 특수 문자를 제공하기 위해 사용자 이름을 추출하는 동안PHP 자동 로그인 사용자 이름

  1. : 글쎄, 난 지금 마음에 두 가능한 솔루션을했다. 그러나 이것은 단지 "행운"기반 솔루션 일 뿐이며 사용자가 작성한 텍스트에는 적합하지 않습니다.

  2. 전체 frking 사용자 이름 배열을 가져 와서 물마루를 매번 가져 오는 중 ... 나는 제한된 요소로 탐지를 줄임으로써 serverload를 줄일 수 있습니다 ... autor의 친구를 말하자. 그러나 어쨌든 이것은 또한 잘 정의되어 있지 않을 것입니다.

나는 당신이 가지고있는 힌트에 대해 기뻐할 것입니다. PHP, JS (JQuery FW)를 사용할 수 있습니다.

+1

무엇 오탐 (false positive)에 대한 :

function addhashtags($text) { $text = preg_replace('/#([\\d\\w]+)/', '<a href="/?h=$1">$0</a>', $text); return $text; } 

+0

사실 당신이 옳다는 사실에 대해서도 생각했습니다. 그러나 다른 한편으로는 애니메이션 및 게임 페이지와 마찬가지로 그다지 큰 거래가 아니기 때문에 일반적으로 상당히 독특한 "Username"사용자 이름을 얻는 경향이 있으며 포스트 당 하나 또는 두 개의 "misslinks"는 사용자가 좋아야합니다. 시스템의 행동에 익숙해지는 경향이있다. 그러나 나는 그것을 염두에 둘 것이다! –

답변

0

는 트위터와 ( @ 사용)에 StackOverflow, 당신은이 같은 ( demo)를 사용할 수 있습니다 해내? 예 : 사용자 프레드는 Fettucine Alfredo에 대해 이야기하고 있습니까?
+0

사실 ... 트위터에 대해 생각하지 않았습니다. D, 맞습니다. @는 쉬운 해결책입니다! 나는 그걸로 갈 것 같아. 힌트를 주셔서 감사합니다 :). –

0

이 함수를 사용하여 해시 태그 링크를 만듭니다. @ 기호와 빠른 쿼리를 사용하면 비슷한 방법을 사용할 수 있습니다.

preg_replace('~(^|\s)@([[:alnum:]_]+)~', '$1<a href="/profile/$2/">@$2</a>', $string); 
관련 문제