2011-08-03 8 views
54

drupal 및 tcpdf를 사용하여 PDF 노드를 구현 중입니다. 이 경우 나는이 <<<EOD 태그를 사용한다고 가정합니다. 내가 이것을주지 않았다면/p는 완벽하지 않다. 정확히 <<<EOD의 목적을 달성 할 수 없습니다.PHP에서 <<< EOD를 사용하는 것은 무엇입니까?

누구나이 개념을 설명해 주시겠습니까? HTML 아닌 사전에

$html = <<<EOD 
     <tr> 
      <td>TEST</td> 
     </tr> 
EOD; 

감사합니다 ....

답변

75

하지만, PHP를. HEREDOC 문자열 메서드라고하며 여러 줄 문자열을 작성하는 데 따옴표를 사용하는 대신 사용할 수 있습니다.

귀하의 예제의 HTML은 다음과 같습니다

<tr> 
     <td>TEST</td> 
    </tr> 

그것을 설명 PHP documentation을 읽어보십시오.

+4

는 그 –

+0

말씀 일을 잊지 마세요 :) 펄도 사용되는하지만, 내가 생각 이게 맞았 어. –

25

PHP에는 4 가지 유형의 문자열이 있습니다. 그들은 작은 따옴표 ('), 큰 따옴표 (")와

당신은 히어 닥 문자열 안에 작은 따옴표와 큰 따옴표를 모두 사용할 수 있습니다. 변수는 단지 큰 따옴표로 확장됩니다

.

Nowdoc (<<<'EOD')와 히어 닥 (<<<EOD) 문자열 nowdoc 문자열은 작은 따옴표와 같은 변수를 확장하지 않습니다

가 심판

:.!. 문제는 PHP 태그 이후 http://www.php.net/manual/en/language.types.string.php#language.types.string.syntax.heredoc

+4

그것에 의하여 EOD는 무엇을 의미합니까? 그리고 왜 일부는 EOT를 사용합니까? – CMCDragonkai

+4

@CMCDragonkai 좋은 질문입니다. 'EOD'는 특별한 의미가없는 것으로 여겨지며, 개폐 꼬리표가 비슷하다면 사실상 모든 레이블을 사용할 수 있습니다. [여기] (http://www.php.net/manual/en/language.types.string.php#language.types.string.syntax.heredoc), 더 깊은 예제 ('Example #')를 보면, 'LABEL' ('<<< LABEL' +'LABEL;')과'FOOBAR'로 예제를 찾을 수 있습니다. 나는 또한 나의 출처의 일부에서'델'을 발견했다. 그래서 그것은 당신이 자유롭게 사용할 수있는 것 같습니다. – trejder

+1

나는 항상 "데이터의 끝"을 의미한다고 가정했다. – Sp4cecat