这是一些混有HTML的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
我没有看到括号有任何问题。产生这个错误的原因是什么?
答案 0 :(得分:1)
如果您正确格式化代码以使其实际可读,那么多余的支架(以及缺少的开口支架)很容易被发现:
<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 }; ?>
答案 1 :(得分:1)
如果您正确缩进代码,这将非常有用。
<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 something
等同于echo(something)
,但前者是首选。此外,与保留字的大小写保持一致是有意义的,即如果您使用小写,始终使用小写字母保留字。
答案 2 :(得分:0)
末尾有一个额外的括号以及一些多余的分号,“echo”被大写。试一试:
<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 } ?>
答案 3 :(得分:0)
如果您将所有HTML分解,第2行和第3行就会出现:
if (array_key_exists('caption', $inf)) Echo ($inf['caption']); }; };
你不需要任何一个右大括号。