【发布时间】:2016-07-01 03:05:10
【问题描述】:
我是 PHP 的菜鸟,请帮帮我,为什么它不回显我班级的值?也许在 PHP 中使用类中的值是通过特定的方式进行的(我来自 Java/C#)?
<?php
class GuestBook
{
private static $numInstances = 0;
private $var1 = 10;
function __construct()
{
$numInstances++;
}
public static function getNumInstances()
{
return $numInstances;
}
public function getVar1()
{
return $var1;
}
}
$instance1 = new GuestBook();
$instance2 = new GuestBook();
echo(GuestBook::getNumInstances());
echo($instance1->getVar1());
?>
【问题讨论】:
-
请注意您在类定义代码中没有做的一件事:GuestBook:: getNumInstances()。现在在类本身中,您可以使用
self引用该类以获取静态属性和方法。 -
回显语法错误。检查这个w3schools.com/php/func_string_echo.asp。
-
在java中你可以,但在php中你不能访问像
$numInstances这样的类变量 -
现在您的代码至少尝试更改/返回局部变量,而不是类属性。 (打开错误报告以获取一些错误:)