【问题标题】:How can I put all includes on one page with classes?我怎样才能把所有包含在一个页面上的类?
【发布时间】:2018-06-26 06:30:32
【问题描述】:

对于学校项目,我需要将所有返回代码放入包含中。我想把它全部放在一页上,但我无法让它工作。创建一个包含没有问题,但我希望它们都在一个 PHP 页面中。我有以下代码,但它是错误的:

//footer
<?php

class footer
{
echo '<a href="login.php">Account</a>';
echo '<a href="subscription.php">Subscription</a>';
echo '<a href="about.php">About us</a>';
echo '<a href="termsofuse.php">Terms of Use</a>';
echo '<small>&copy; 2017, (myname)  &  (name partner)</small>';
}
?>

如何修改代码,使其正确?

【问题讨论】:

标签: php class include footer


【解决方案1】:

你错了。您只会在类主体中直接声明方法(函数)、属性(变量)和常量。 如果你想运行 echoes,你应该在一个方法中声明它。

你的例子:

class Footer
{
    public static function printLinks()
    {
        echo '<a href="login.php">Account</a>';
        echo '<a href="subscription.php">Subscription</a>';
        echo '<a href="about.php">About us</a>';
        echo '<a href="termsofuse.php">Terms of Use</a>';
        echo '<small>&copy; 2017, (myname)  &  (name partner)</small>';
    }
}

然后在每个你想要的地方调用它:

Footer::printLinks(); //This will call all those echoes at once

【讨论】:

  • 我喜欢这个,它也可以工作,尽管它正在打印文本:未捕获的错误:在 C:\xampp\htdocs\php\PHP\index.php:120 堆栈中找不到类“页脚” trace: #0 {main} 抛出。它是自动上传到服务器的,我什至是手动上传的。一切正常exapt页脚。不知道我在这里做错了什么。编辑:错字
  • 你必须包含它的声明(例如)或者使用autoload
  • 另外,您的错误表明您正在尝试调用“页脚”。正确的是“页脚”-没有“s”
【解决方案2】:

将 html 代码分配给变量。

<?php $footer = "<a href="login.php">Account</a>
                 <a href="subscription.php">Subscription</a>
                 <a href="about.php">About us</a> 
                 <a href="termsofuse.php">Terms of Use</a>
                 <small>&copy; 2017, (myname)  &  (name partner)</small>"
?>

之后,您只需为页面的所有部分包含一个 PHP 文件和 &lt;?php echo $footer ?&gt;

【讨论】:

  • 目前已经知道了,但这会提供这么多页面。如果所有包含都在 imo 的 1 页上会更干净。
  • 这个看起来非常漂亮和干净,与上面的问题相同,但在这里我返回:未定义变量:页脚。这个绝对干净
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-01
  • 1970-01-01
  • 2015-02-12
  • 1970-01-01
  • 2023-03-13
  • 2020-10-04
相关资源
最近更新 更多