PHP sözdizimi hatası T_ENCAPSED_AND_WHITESPACE

2 Cevap printing

Php temelleri ile çalışmaya başladım ve ben nasıl dizeleri ile kod karıştırmak anlamakta biraz problem var.

Ben dize bloklarını yazdırmak için, ama adını bilmiyorum ve ben örnekler bulmak mümkün değilim büyük ve yararlı tarzı bulundu.

the code below return me the error:
Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /web/htdocs/food/user/index.php on line 120

<?php   
$html_str = <<<STR
    <li><img alt="hello" src="$path_images/pencil.png"/><a title="hello" href="$path_pages/$page/action">Details</a></li>

STR;
print $html_str;
?>

Birisi ben yanılıyorum ve bu sözdizimi stilin adı nerede bana bulmak için yardımcı olabilir?

thanks v

2 Cevap

I've found the problem!
in the example I've posted it can't return the error:

Working code

<?php
$str = <<<STRING
hello! this is a working string<br/>
and i can do too many things with heredoc syntax!
STRING;

print $str;
?>

Not working code

<?php
     $str = <<<STRING
     syntax error!<br/>
     syntax error!<br/>
     why?
     STRING;

     print $str;
?>

Sorun o değil neden "STRING;" ama "        STRING;" etiketinin bir parçası olarak kabul edilir, bu yüzden yakın etiketi yorumlanmaz STRING; yakın etiketi, o önce sekmeler 't çalışır.

bir başkası için yararlı gelmek umuyoruz.

Sözdizimi adı HEREDOC strings ya da "buraya belgeler".

Benim sunucuda kodunuzu çalıştırdığınızda ama, ben yine de, bunu simge hataları alamadım. Belki hata başka bir yerde aslında?