我有一个很小的类别,把付款记录插入数据库。如下所示:
<?php
class pay{
public static function pay($user, $income, $type, $refid='--'){
mysql_query("INSERT INTO earn VALUES (NULL, '$user', '$income', '$refid', '$type', ".time().")");
}
}
?>但是浏览器提供了以下致命错误。
致命错误:构造函数支付::pay()在第41行的F:\xampp\htdocs\new\sts\class.php中不能是静态的
我很困惑为什么会发生错误。请帮我理解一下。
发布于 2012-07-10 20:28:40
如果您的方法名称与类的名称相同,则它被视为构造函数。构造函数不能是静态的。必须重命名此类或方法,或使该方法不静态,并在要使用该方法时创建该类的实例。
发布于 2012-07-10 20:28:51
在PHP5中,构造函数称为__construct。在PHP4中,它曾经是类的名称,例如function pay for class pay。PHP 5与PHP 4向后兼容,因此仍然有效。构造函数不能是static。
发布于 2012-07-10 20:29:14
构造函数是在创建对象时调用的,因此不能是静态的。通过将函数命名为与类相同的函数,php认为您希望它成为构造函数。
https://stackoverflow.com/questions/11421396
复制相似问题