2012-05-01 6 views
0

여기에 HTML과 혼합 된 일부 PHP가 있습니다. 상당히 혼란 스럽습니다. 예기치 않은 대괄호 - PHP

<div class="media"><?php echo ($inf['post_url']) ?><img src="<?php echo($inf['photos'][0]['alt_sizes'][0][url]); ?>" /></div> 
    {block:Caption}<?php if (array_key_exists('caption', $inf))?><div class="copy"><?php Echo ($inf['caption']);?></div><?php }; ?> 
    <?php }; ?> 

두 번째 줄이 오류

Parse error: syntax error, unexpected '}' on line 1708 

내가 괄호 잘못 아무것도 표시되지 않습니다를 생산하고 있습니다. 이 오류가 발생하는 이유는 무엇입니까?

<div class="media"> 
     <?php echo ($inf['post_url']) ?> 
     <img src="<?php echo($inf['photos'][0]['alt_sizes'][0][url]); ?>" /> 
    </div> 
    {block:Caption} 
    <?php if (array_key_exists('caption', $inf))?> 
     <div class="copy"> 
      <?php Echo ($inf['caption']);?> 
     </div> 
    <?php }; ?> 
<?php }; ?> 
+0

이 문제는 확실하지 않지만 echo after ($ inf [ 'post_url']) – dweiss

+4

세미 코드가 누락 된 것일 수 있습니다. 코드가 공백과 들여 쓰기로 구성되어 있다면 문제를 볼 수 있습니다 매우 명확하게 :) –

답변

0

바르게.

<div class="media"> 
     <?php echo ($inf['post_url']) ?> 
     <img src="<?php echo($inf['photos'][0]['alt_sizes'][0][url]); ?>" /> 
    </div> 
    {block:Caption} 
    <?php if (array_key_exists('caption', $inf)) ?> 
     <div class="copy"> 
     <?php Echo ($inf['caption']);?> 
     </div> 
    <?php }; ?> 
<?php }; ?> 

매우 기본적인 닫는 대괄호에는 대괄호가 없습니다.

문체 관련 조언 : echo는 PHP 구문이므로 함수처럼 호출 할 필요가 없습니다. echo somethingecho(something)과 같지만 전자는 선호됩니다. 또한 예약어의 대소 문자와 일치하도록 비용을 지불합니다. 즉, 소문자를 사용하는 경우 항상은 예약어로 소문자를 사용합니다.

0

을 그것은 크게 도움이 당신이 당신의 코드를 들여 경우 : 실제로 읽을 수있을 거라고 있도록, 제대로 불필요한 브래킷 (누락 여는 괄호) 발견하기 쉬운 것입니다 당신의 코드를 포맷하려는 경우

0

끝 부분에 여분의 괄호와 불필요한 세미콜론이 있고 "echo"가 대문자로 표시되었습니다. 당신은 모든 HTML을 끓여 경우

<div class="media"> 
    <?php echo ($inf['post_url']); ?> 
    <img src="<?php echo($inf['photos'][0]['alt_sizes'][0][url]); ?>" /> 
</div> 
    {block:Caption} 
    <?php if (array_key_exists('caption', $inf)) {?> 
    <div class="copy"> 
    <?php echo ($inf['caption']);?> 
    </div> 
    <?php } ?> 
0

는, 선 2와 3이 나올 :

if (array_key_exists('caption', $inf)) Echo ($inf['caption']); }; }; 

당신은 바로 중괄호를 닫는 그 중 하나를 필요로하지 않는이에게 기회를주십시오.

+0

중괄호 뒤에 세미콜론이 필요하지 않습니다. –

+0

에코도 대문자로 변환해야합니까? 기존의 PHP 코드는 그대로 재현했습니다. =) –

관련 문제