2017-09-15 8 views
1

HEREDOC 구문을 사용하여 변수를 해석하지만 백 슬래시 문자를 무시하는 방법을 파악하려고합니다. 또는 NOWDOC 구문을 사용하여 변수의 해석을 허용하십시오. 내가 뭘하려고 오전의 예 :PHP에서 이스케이프 시퀀스를 무시하고 변수 해석하기 HEREDOC

$title = "My title here"; 
$date = "Aug 12, 2017"; 

$latex_code = <<<LCODE 
    \documentclass{article} 

    \usepackage{graphicx} 

    \pagestyle{head} 
    \firstpageheader{ 
     $title 
     $date 
    } 
LCODE; 

file_put_contents("article.tex", $latex_code); 

나는 모든 슬래시를 무시하지만, 변수 $ 제목과 $ 날짜를 해석하고 싶다. HEREDOC 또는 NOWDOC 블록을 종료하지 않고이 작업을 수행 할 수있는 방법이 있습니까?

+0

탈출 할 수 있습니까? 백 슬래시를 "무시"한다는 것은 무엇을 의미합니까? 문자 그대로 해석하거나 전혀 포함시키지 않으시겠습니까? –

+0

중괄호 안에 2 개의 vars가 번역 될지 잘 모르겠습니다. 원하는 중첩 대괄호를 번역 할 것을 제안합니다. \ firstpageheader {$ title} {$ date} LCODE; –

+0

@ Don'tPanic이 모든 것을 그대로 텍스트 파일로 내보내려고 시도했지만 변수가 해석됩니다. file_put_contents 행으로이를 표시하도록 내 질문을 업데이트했습니다. – kojow7

답변

3

의도 한 출력을 오해 할 위험이 있으므로 백 슬래시를 벗어날 수 있다고 생각합니다. (난 당신이 단일 백 슬래시 출력에 포함 할 있으리라 믿고있어.)

$title = "My title here"; 
$date = "Aug 12, 2017"; 

$latex_code = <<<LCODE 
    \\documentclass{article} 

    \\usepackage{graphicx} 

    \\pagestyle{head} 
    \\firstpageheader{ 
     $title 
     $date 
    } 
LCODE; 

을 분명히 당신이 그렇게하지 않으면, 그들 (예를 들어, \f)의 일부 해석됩니다 escape sequences 될 것입니다.