为什么在静态函数上显示致命错误

Har*_*rma 14 php

我有一小部分将付款记录插入数据库.下面给出:

<?php

class pay{
        public static function pay($user, $income, $type, $refid='--'){
        mysql_query("INSERT INTO earn VALUES (NULL, '$user', '$income', '$refid', '$type', ".time().")");   
        }
    }

?>
Run Code Online (Sandbox Code Playgroud)

但浏览器给出了以下致命错误..

致命错误:构造函数pay :: pay()在第41行的F:\ xampp\htdocs \new\sts\class.php中不能是静态的

我很困惑,为什么发生错误..请帮助我理解.

Exp*_*lls 31

如果您的方法名称与类的名称相同,则将其视为构造函数.构造函数不能是静态的.您必须重命名此类或方法,或者使该方法不是静态的,并在您想要使用它时创建该类的实例.


dec*_*eze 10

在PHP 5中,调用构造函数__construct.在PHP 4它使用的是类,例如名称function payclass pay.PHP 5向后兼容PHP 4,因此仍然有效.建设者不可能static.