2012-04-11 12 views
0

데이터베이스는 HTML 문자로 기사를 보여 사용 strip_tags : 사용된답니다 character_limiter 및

<div class="article"> 
As is usual also in Buenos Aires, is held in that city again the official Asterisk Advanced course with the new agenda <a href="http://www.google.com">google page</a> 
</div> 

:

$ 로우 -> 기사를 character_limiter ($ 로우 -> 기사 160) 짧은 텍스트를하지만, 즉, 내가 함수 strip_tags()를 해결하는 데 사용되는 HTML 코드에서 오류가 발생 하이퍼 링크를 인하 어떻게 ...하지만 다음과 같은 표시됩니다 : 당신이 볼 수 있듯이

<div class="article"> 
    As is usual also in Buenos Aires, is held in that city again the official Asterisk Advanced course with the new agendagoogle page... 
    </div> 

는, 함수는 t을 제거 그는 하이퍼 링크 레이블뿐만 아니라 서라운드 공간을 제거합니다.

은 내가이 글을 읽고 : Problem using strip_tags in php

를 ... 그러나이 개 텍스트 요소로 설정되어 정규 표현식을 사용합니다. 당신이 정의되지 않은 라벨과 비슷한 것을 사용할 수 있을지 궁금합니다. 귀하의 도움을 바랍니다

답변

0

<a> 시작 태그와 문자열 사이에 공백이 있으면 예제에 표시 할 내용이 없어야합니다. 링크 된이 문제는 사용자가 <div> 또는 이와 유사한 것을 추가하는 경우에만 나타납니다. 같은 것들 <b><a><u> 등; 누군가가 뭔가를 입력 할 때 자연스러운 공간을 갖게됩니다.

echo character_limiter(strip_tags($row->article), 160); 
  1. Strip_tags 첫
  2. 제한 문자 2 일 : 당신이해야 할 일은

    는 다음과 같습니다. 그들이 the brown fox<a href="#">jumps over</a> the..

    HTML에 대한 대안도 인하를 사용하는 것처럼 뭔가 공간을 두지 않는 어쨌든 경우

가 홀수 '공간'문제에 대해 걱정하지 마십시오 , 그것은 인간의 오류의 결과 일 것이다 코드 (질문/답변을 입력 할 때 SO에서 사용하는 것). IT는 훨씬 깨끗하게 IMHO입니다.

+0

내 웹 사이트에서 character_limiter (strip_tags ($ row-> article), 160)를 사용하십시오. 첫 번째 예에서 볼 수있는 것처럼 사람의 실수가 없다고 생각합니다. 텍스트는 하이퍼 링크 레이블과 구분됩니다. – csotelo

+0

@ user1151980 예를 들어, 'strip_tags'는 앞에있는 공백이 아닌 HTML 태그 만 제거하므로' '전에 공백을 제거하는'strip_tags'가 없어야합니다. – Jakub

+0

이상한 ... 어떤 이유로이 문자열이 연결됩니다. Wordpress 포럼에서 preg_replace ('/ <[a-zA-Z \ /] [^>] *> /', '', $ str); 함수를 사용하기 전에. – csotelo