2010-10-22 10 views
7

Przy normalnym ciąg PHP można to zrobić:Czy jest możliwe łączenie łańcucha heredoc w PHP ..?

$str = "Hello "; 
$str .= "world"; 
$str .= "bla bla bla"; 
$str .= "bla bla bla..."; 

Ale można zrobić to samo z heredoc ciąg ..?

$str = <<<EOD 
Hello 
world 
EOD; 

$str .= <<<EOD 
bla bla bla"; 
bla bla bla..."; 
EOD; 
+4

-1 naprawdę, możesz to sprawdzić samemu. Jeśli nie masz lokalnego PHP zainstaluj google dla 'wykonaj kod PHP online' ... – NikiC

+1

Naprawdę powinieneś był być w stanie zorientować się, czy to działa na własną rękę, zamiast pytać SO. Kod działa dokładnie tak, jak go opublikowałeś. Eksperymentowanie jest kluczem do zrozumienia. – meagar

+2

Zgadzam się, mogłem to przetestować ... Ale nie mogłem znaleźć tych informacji za pomocą szybkiego wyszukiwania w Google i prawdopodobnie nie jestem pierwszym i/lub ostatnim, który miałby to dokładne pytanie. Teraz te informacje będą dostępne dzięki poniższym odpowiedziom. – pnichols

Odpowiedz

12

Oczywiście. Dlaczego nie byłbyś w stanie?

Heredocs oceniają ciąg znaków, więc jest to całkowicie dopuszczalne.

6

Tak, można.

A heredoc jest odpowiednikiem ciągów podwójnie cytowanych bez podwójnych cudzysłowów.

8

Tak, można. Heredoc jest częścią wyrazu, więc można nawet to zrobić:

$s = 'abc' . <<<EOD 
def 
EOD 
. 'ghi'; 

Bądź ostrożny ze znacznikiem wycofanych z danymi mimo: powinna ona być jedyną rzeczą na linii.

+2

+1 tylko dla rzeczy na linii ... nie można nawet wciąć –

Powiązane problemy