1

我无法进行以下工作。我知道这是因为 HTML 字符串中的 PHP 函数,但我不知道如何修复它。

echo '<aside class="tipContainer">'.'<div>'.'<h1>'.$header.'</h1>'.'<img src="<?php bloginfo('template_url'); ?>/images/pencil_Tip.gif" alt="">'.'</div>'.'<p>'.$content.'</p>'.'</aside>';

我收到此错误:意外的 T_STRING,期待 ',' 或 ';' 在 ....

4

8 回答 8

11

尝试:

echo '<aside class="tipContainer"><div><h1>' . $header . '</h1>'.
     '<img src="' . get_bloginfo('template_url') . '/images/pencil_Tip.gif" ' .
     'alt=""></div><p>' . $content . '</p></aside>';

由于您已经在<?php ?>echo 语句的标签内,因此当您想调用 get_bloginfo() 时不需要它们。只需将该函数作为字符串连接的一部分调用。

于 2012-06-27T17:09:20.383 回答
5

PHP 嵌套太深。(php嵌套在php中)。试试这个:

echo '<aside class="tipContainer"><div><h1>'.$header.'</h1><img src="'.bloginfo("template_url").'/images/pencil_Tip.gif" alt=""></div><p>'.$content.'</p></aside>';
于 2012-06-27T17:09:32.060 回答
4

尝试:

//stop executing PHP, go to plain HTML
 ?>
<aside class="tipContainer">
<div>  
    <h1><?php echo $header?> </h1>
    <img src="<?php bloginfo('template_url'); ?>/images/pencil_Tip.gif" alt="">
</div>
<p>
<?php echo $content ?>
</p>
</aside>

<?php //start php again

通常使代码更简洁,更易于维护,以将 php 交织到 html 中,而不是相反的方式 aroudn

于 2012-06-27T17:10:10.990 回答
2

试试这个:

echo '<aside class="tipContainer"><div><h1>' . $header . '</h1><img src="'
. bloginfo('template_url')
. '/images/pencil_Tip.gif" alt=""></div><p>' . $content . '</p></aside>';
于 2012-06-27T17:09:39.330 回答
0
echo '<aside class="tipContainer">'.'<div>'.'<h1>'.$header.'</h1>'.'<img src="' . bloginfo('template_url') . '/images/pencil_Tip.gif" alt="">'.'</div>'.'<p>'.$content.'</p>'.'</aside>';
于 2012-06-27T17:09:28.150 回答
0

解释为什么它不起作用:

'<img src="<?php bloginfo('template_url'); ?>/images ...
'______ php string _______'            '__ another php string ...
                           ^^^^^^^^^^^^
                           this is not part of the sting,
                           because you just closed it.

解决方案:

  • 'aaa' . "'bbb'" . 'ccc': 替代引用风格
  • 'aaa\'bbb\'ccc': 引用字符串中的单引号
  • "aaa'bbb'ccc" : 使用双引号引用包含单引号的字符串
于 2012-06-27T17:09:49.087 回答
0
echo '<aside class="tipContainer"><div><h1>'.$header.'</h1><img src="' . bloginfo('template_url') . '/images/pencil_Tip.gif" alt=""></div><p>'.$content.'</p></aside>';
于 2012-06-27T17:10:22.213 回答
0

试试下面,

--> 尽可能避免连接,不需要经常拆分/连接字符串,例如:“string1”。"string2" 不是必需的,只需执行 "string1string2" 即可避免混淆。

--> 使用 IDE,它对调试语法错误有很大帮助。

<?php
echo '<aside class="tipContainer"><div><h1>'. $header. '</h1><img src="' . bloginfo('template_url') . '"/images/pencil_Tip.gif" alt=""></div><p>'.$content.'</p></aside>';
?>
于 2012-06-27T17:11:32.650 回答