将某个对象分配给静态属性是非法的吗?
我在下面的代码中收到 HTTP 500 错误。
require_once('class.linkedlist.php');
class SinglyLinkedlistTester {
public static $ll = new Linklist();
}
HTTP 错误 500(内部服务器错误):服务器尝试满足请求时遇到意外情况。
注意:像 string、int 这样的非对象对静态变量的赋值没有问题。
举个例子,
public static $ll = 5; //no issue
class.linkedlist.php 中也没有代码问题。
您不能在类属性声明中创建新对象。您必须使用构造函数来执行此操作:
class SinglyLinkedlistTester {
public static $ll;
public function __construct() {
static::$ll = new Linklist();
}
}
Edit:此外,您可以使用 PHP 的 lint 标志来测试文件是否有错误,而无需执行它们(-l
):
php -l your_file.php
这将告诉您文件中是否存在语法或解析错误(在本例中,这是一个解析错误)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)