如何访问在另一个PHP sript类中声明的变量

时间:2015-10-30 14:47:36

标签: php html oop

我有一个名为“Header.inc.php”的文件,它有两个类。 HomepageHeader&菜单。这两个类在方法中都有HTML。问题是我想在HomepageHeader类中插入菜单,但由于HTML我不能也不知道如何访问PHP中另一个类的内容。

以下是我的代码:

<?php

class HomepageHeader
{
    public $HomepageSlider = "HTML Code for Slider";

**At this point I want to insert the content of class**

//HTML Continues
}

class Menu
{
    public $PageMenu = "HTML Code for Menu";
}

主要目标是在第一个类的HTML之间插入Menu类内容,然后在此之后继续HTML以使其成为一个部分。

4 个答案:

答案 0 :(得分:0)

我建议您创建一个静态变量,然后在不必实例化该类的情况下访问它。像这样:

class Menu
{
    public static $PageMenu = "HTML Code for Menu";
}

然后你可以这样称呼它:

print Menu::$PageMenu;

答案 1 :(得分:0)

Yuo可以像以下一样创建对象:

$Homepage = new HomepageHeader();

之后你可以在这个类中使用变量

echo $Homepage->HomepageSlider;

将您的代码更改为:

class HomepageHeader {
    public $HomepageSlider = "HTML Code for Slider";
    $menu = new Menu();
    echo $menu->PageMenu;
}

答案 2 :(得分:0)

我不确定我是否完全理解,但我认为你想要这个?

<强>的header.inc.php     

class HomepageHeader
{
    public $HomepageSlider = "HTML Code for Slider";

**At this point I want to insert the content of class**

//HTML Continues
}

class Menu
{
    public $PageMenu = "HTML Code for Menu";
}

<强>的index.php

<?php
include_once('Header.inc.php');

$home = new HomepageHeader();
$menu = new Menu();

echo $home->HomepageSlider;
echo $menu->PageMenu;

echo '<h1>More HTML, yay!</h1>';

答案 3 :(得分:0)

两种选择:

将变量声明为static:

class foo { public static $bar = 'baz';}
echo foo::$bar;

或实例化对象:

class foo { public $bar = 'baz'; }
$foo = new foo();
echo $foo->bar;