在php函数中使用单引号和双引号来输出html& PHP

时间:2016-11-16 19:10:28

标签: php wordpress function variables

我正在尝试使用wordpress主题中的钩子在网站上使用函数替换页脚信用。

你可以看到" $ my_content"变量输出包括php和html。

当在特定函数之外单独使用时,此字符串按预期输出,因此我只能推断出问题是由my_content变量输出结果所需的单引号引起的?

 function et_get_footer_credits()
{
  $my_content = '<p id="footer-info">&copy; Copyright <?php echo showDateRange('2010'); ?> <a href="<?php echo esc_url( home_url( '/' ) ); ?>">Company name</a>text</p>';
  return $my_content;
}

2 个答案:

答案 0 :(得分:1)

你不能在字符串中使用php。您应该更改您的函数,因此html部分将与$my_content变量分开。您可以使用ob_startob_get_clean功能。例如:

function et_get_footer_credits() {
    ob_start();
    ?>

    <p id="footer-info">
        &copy; Copyright <?php echo showDateRange('2010'); ?> 
        <a href="<?php echo esc_url( home_url( '/' ) ); ?>">Company name</a>
        text
    </p>

    <?php
    $my_content = ob_get_clean();

    return $my_content;
}

答案 1 :(得分:1)

正如RohitS评论所说,你需要设想$my_content

$my_content = '<p id="footer-info">&copy; Copyright ' . showDateRange('2010').' <a href="'. esc_url( home_url( '/' ) ) .'">Company name</a>text</p>';

回显et_get_footer_credits函数的返回,

echo et_get_footer_credits();