这是我的代码
echo "<div class="navigation"><p><?php posts_nav_link(); ?></p></div> </div><!-- #content -->";
但我得到错误:Parse error: syntax error, unexpected T_STRING, expecting ','
如何更正此代码?
转义双引号
你没有逃避你的报价。您的代码认为它"
在"navigation"
.
echo "<div class=\"navigation\"><p><?php posts_nav_link(); ?></p></div> </div><!-- #content -->";
连接,使用句点或 sprintf()
是的,你可以连接你的字符串。这是一个更好的选择。查看sprintf()。
sprintf('<div class="navigation"><p>%s</p></div>', posts_nav_link());
改用单外引号
或者,您可以使用单引号;)
echo '<div class="navigation"><p><?php posts_nav_link(); ?></p></div> </div><!-- #content -->';
最后,最好的方法
最后......你为什么不结束你的PHP,正常编写你的HTML,然后把你的PHP放在它应该在的地方呢?
// your php code...
?>
<div class="navigation">
<p>
<?php posts_nav_link(); ?>
</p>
</div>
<div><!-- Content --></div>
<?php
// Continue your PHP
恕我直言,后一种选择在您看来要好得多。
我认为你可以只concatenate
使用带点的字符串和变量.
并正确转义你的双引号\"
echo "<div class=\"navigation\"><p>". posts_nav_link() ."</p></div> </div><!-- #content -->";
//^escape ^ //^concatenate //^concatenate
1)您可以使用.
. 将硬编码的字符串连接到函数返回的值。
2)您必须转义字符串中的双引号。
echo "<div class=\"navigation\"><p>" . posts_nav_link() .
"</p></div> </div><!-- #content -->";