2011-05-03 3 views
1

나는 PHP에서 변수가어떻게 여러 줄의 문자열을 자바 스크립트 함수에 전달할 수 있습니까?

$test = "This is a string 
It has multiple lines 
there are three total" ; 

(텍스트 영역에서 출력)

내가 자바 스크립트 함수에이 변수를 전달하려는

내 PHP 파일이 쓰기가

<?php echo "<script language=javascript>convert('$test');</script>"; ?> 

하지만이 경우 "Unterminated string literal"오류가 발생합니다.이 문제를 어떻게 해결할 수 있습니까 ??

+1

질문에 관련되지를하지만 당신은 사용해야합니다' 변환 ('$ test'); "; ?>' – Gaurav

+1

'\ r \ n'을 사용하십시오. Luke – zerkms

+0

@Gaurav :'

0

이 시도하십시오 :

$test = str_replace($test, "\n", "\\n"); 
+0

'\\\ n '이어야합니다. 백 슬래시와 개행 문자로 변환합니다. – duri

+0

@duri 이것이 사실이 아닌지 확실하지 않습니다. 우리는'\ n'이 말 그대로 JS 함수에 전달되기를 원합니다. –

+0

아, 알겠습니다. 나는 또 다른 것을 생각하고 있었다. (줄의 끝에 백 슬래쉬를 추가하면 자바 스크립트 문자열이 여러 줄을 넘을 수있다. – duri

1
<script>convert(<?php echo json_encode($test); ?>);</script> 
+0

큰 따옴표를 이스케이프 처리하는 것처럼 보입니다. 아주 좋은 해결책 IMO! – groovenectar

관련 문제