2016-07-15 5 views
-2

Javascript 코드 heredoc 구문을 출력하려고하는데 PHP print_r 함수를 사용하여 출력하고 싶습니다. 그렇게 할 수 있습니까?php heredoc 구문으로 자바 스크립트를 작성할 수 있습니까?

PHP :

<?php 
function printR($val){ 
    echo "<pre>"; 
    print_r($val); 
    echo "</pre>"; 
} 

$str = <<<EOT 
    var msg = "Hello my name is "; 
    var name = "Jermaine Forbes"; 
    function writeIt(m,n){ 
     console.log(m+n); 
    } 
    writeIt(msg,name); 
    EOT; 

printR($str); 
?> 

(@FirstOne로 : 나는이 때부터 EOT;이 idented 유지 * 그것에 대해 코멘트) 예 당신이 할 수있는

+1

시도해 보셨습니까? – Timo

+0

TimoSta 예, "50 행의 예상치 못한 파일 끝"이라고 말하면서 오류가 발생했습니다. –

+0

할 수 있더라도 좋은 방법이 아닙니다. –

답변

2

. 당신은 문자열 만 자바 스크립트 (NO PHP 변수)가 기대하는 경우, 내가 대신 히어 닥의 nowdoc을 사용 (닫는 구분 기호가 마지막에 혼자 있어야한다는 EOT

$str = <<<'EOT' 
      var msg = "Hello my name is "; 
      var name = "Jermaine Forbes"; 
      function writeIt(m,n){ 

       console.log(m+n); 
      } 

      writeIt(msg,name); 

EOT; 

참고 또한 개방의 주위에 작은 따옴표를 사용 . 라인 전이나 그 이후에 어떤 공간을 가질 수 없습니다 당신이 EOT;을 들여 않았기 때문에 코드가 작동하지 않았다 From the docs을 :..

경고 :주의하는 것이 매우 중요하다 닫는 식별자 라인 세미콜론 (;)을 제외한 다른 문자를 포함 할 수 없습니다. 즉 esp를 의미합니다. 식별자가 들여 쓰기되지 않을 수도 있으며, 세미콜론의 앞이나 뒤에 공백이나 탭이 없을 수도 있습니다.

+0

함수를 수행 할 수 있도록 자바 스크립트 출력을 시도하지 않습니다. 웹 페이지에서 자바 스크립트를 볼 수 있도록 인쇄하려고합니다. 누군가 내 설명을 편집했기 때문에 사람들은 내가하고 싶은 것을 확신하지 못했습니다. –

+0

알겠습니다. 이해해 주었고 폐회사를 삭제했습니다. 문제 해결에 도움이 되었습니까? 그렇다면 upvote & 그것을 선택하십시오. 그렇지 않으면, 내가 어떻게 더 좋은 답변을 쓰는 ​​법을 배울 수 있는지 알려주십시오. – BeetleJuice