回应HTML创建元素

时间:2016-04-19 15:45:51

标签: php

出于某些原因,这不会起作用,我想我说得对,因为我确实读到了这个:

echo '<li class="dropdown">';
echo    '<a class="dropdown-toggle" data-close-others="false" data-delay="0" data-hover="dropdown" data-toggle="dropdown" href="#">';
echo        '<img src="<?=$steamprofile['avatar']?>" height="30" style="border-radius: 100%;">';
echo    '</a>';
echo '</li>';

我的错误是什么?我的意思是我真的没有看到它之前有什么问题我以前做过它并且有效吗?

3 个答案:

答案 0 :(得分:3)

当您想要将变量插入字符串时,不要使用撇号(single quotes),$将字面解释为$ 变量的开始。

使用double quotes(转义中的双引号):

echo "<li class=\"dropdown\">"
    . "<a class=\"dropdown-toggle\" data-close-others=\"false\" data-delay=\"0\" data-hover=\"dropdown\" data-toggle=\"dropdown\" href=\"#\">"
    . "<img src=\"{$steamprofile['avatar']}\" height=\"30\" style=\"border-radius: 100%;\">"
    . "</a>"
    . "</li>";

HEREDOC语法:

echo <<<EOT
<li class="dropdown">
<a class="dropdown-toggle" data-close-others="false" data-delay="0" data-hover="dropdown" data-toggle="dropdown" href="#">
<img src="{$steamprofile['avatar']}" height="30" style="border-radius: 100%;">
</a>
</li>
EOT;

答案 1 :(得分:0)

试试这个。

echo '<li class="dropdown">';
echo '<a class="dropdown-toggle" data-close-others="false" data-delay="0" data-hover="dropdown" data-toggle="dropdown" href="#">';
echo '<img src="'.$steamprofile['avatar'].'" height="30" style="border-radius: 100%;">';
echo '</a>';
echo '</li>';

答案 2 :(得分:0)

有时简单地退出php解析并输出直接html更容易。在执行此操作时,没有任何可测量的性能损失,并且代码通常更具可读性。

?> //if needed, drop out of PHP parsing

<li class="dropdown">
  <a class="dropdown-toggle" data-close-others="false" data-delay="0" data-hover="dropdown" data-toggle="dropdown" href="#">

仅回显html中所需的变量。

    <img src="<?= $steamprofile['avatar']; ?>" height="30" style="border-radius: 100%;">
  </a>
</li>

<?php //continue with PHP parsing (if needed)