2012-04-30 4 views
1

잘 다음 작품 :PHP가 포함 종결되지 않은 문자열 문자 메시지

var sFirstText=<?php include("first2.html"); ?>; 

이 따옴표를 포함하여 같은 first2.html 보이는 경우 : first2.html이 보이는 경우,

"<p>sentence one</p><p>sentence two</p>" 

그러나 :

"<p>sentence one</p> 
<p>sentence two</p>" 

나는 종결되지 않은 문자열 리터럴 메시지를받습니다. 캐리지 리턴/줄 바꿈 시퀀스를 제거하지 않고 html을 어떻게 포함시킬 수 있는지 알아보기를 바랍니다. 나는 따옴표를 제거 할 경우에도

는 :

var sFirstText="<?php include("first2.html"); ?>"; 

는 아직 이해할 수 없었던 메시지를 반환 작동하지 않습니다.

기본적으로 cr/lf 시퀀스를 제거하지 않고도 필드에 간단한 HTML 서식을 지정하고자합니다.

+0

시도이'VAR sFirstText = ' ';' – deex

+0

@dqlopez 결과가 '누락되었습니다. 전에 성명 ',하지만 생각에 감사드립니다. – Terry

답변

1

줄 끝 부분에 \을 사용하여 문자열을 다음 줄로 계속 입력하십시오.

+0

그게 속임수 였어. 처음 읽었을 때 인정해야 겠지만, 나는 제대로 작동하지 않을 것이라고 확신했다. 라이브로 배우십시오. – Terry

0

자바 스크립트는 해당 개행 문자를 처리 할 수 ​​없습니다. 파일을 열고 내용을 읽은 다음 공백으로 대체 할 수 있습니다.

또한 소스 콘텐츠를 가져 오는 동안 래핑하는 데 사용한 인용 유형을 이스케이프 처리해야합니다.

다음은 내가 수행 할 작업입니다.

function contents($file, $wrappingQuote='\'') { 
    $fh = fopen($file,'r'); 
    $contents = fread($fh,filesize($file)); 
    fclose($fh); 
    echo preg_replace('~\'~','\\'.$wrappingQuote,preg_replace('~\r?\n~','',$contents)); 
} 

(...)

var str = '<?php contents('first2.html') ?>'; 
// or 
var str = "<?php contents('first2.html','"') ?>"; 
+0

모든 견적 유형에 따라 ** first2.html ** 파일에 코드를 래핑 할 필요가 없습니다. – inhan

관련 문제