2011-05-10 7 views
2

전자 메일 주소가있는 문자열을 ASCII 문자로 변환하여 HTML 문서에 삽입하려고합니다. 가장 쉬운 방법은 무엇입니까?전자 메일 문자열을 ASCII 문자로 변환하려면 어떻게합니까?

내 모델에서이 코드를 사용하여 문자 내 HTML 문서에서 다시 배열을 점점 계속 : 그건 아니다, 그래서

def ascii_email 
    self.email.each_byte do |e| 
    "&#", e, ";" 
    end 
end 
+0

유효한 루비 코드입니까? 나는 당신의 질문을 얻을 수 없었다. – sawa

+0

이것은이 다른 질문과 매우 밀접하게 관련되어있는 것 같습니다 : http://stackoverflow.com/questions/1600526/how-to-encode-decode-html-entities-in-ruby – buruzaemon

답변

4

당신은 실제로를 사용하지 않고 이메일 주소의 문자 반복하고 네가 원하는대로 될거야. 단순히 요소를 통과 반복기 및 변환 된 결과를 반환 한 사이에 중요한 아직 미묘한 차이가있다

def ascii_email 
    self.email.bytes.collect do |e| 
     "&\##{e};" 
    end.join('') 
end 

. 또한 스 니펫에 누락 된 것은 변환 된 배열을 문자열로 되돌려 놓은 것입니다.

+0

그래서'collect'는 무엇을합니까? –

+0

그것은 [Enumerable] (http://apidock.com/ruby/Enumerable)의 일부이며 각 반복의 결과를 새로운 배열로 "수집"하여 반환합니다. – tadman

관련 문제