欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php的基础问题请教一下

程序员文章站 2022-04-25 13:41:03
...
class Test1 {	static private $_name;}$_test1 = new Test1('张三');var_dump($_test1);


页面输出的是:
object(Test1)#1 (0) { }
我实例化的时候还传递了参数,但是Test1的类中我没有写构造方法__construct(),为什么不会报错呢?



回复讨论(解决方案)

构造方法也不是必须的,你传参数进去,它不执行就是了

构造函数已知都在,你不定义只是那个函数为空。

构造方法也不是必须的,你传参数进去,它不执行就是了



基础不怎么牢,麻烦请举个简单的例子可以吗,谢谢!

class Test1 {    static private $_name;    public $_date;    public function __construct() {    	$this->_date = 123;    } }$_test1 = new Test1('张三');var_dump($_test1);

我记得实例化类的时候,构造函数不是就执行了吗
为什么参数不对应啊?


class Test1 {
static private $_name;
}
并没有定义构造函数 __construct

class Test1 {    private static $_name;    public $_date;    public function __construct($name) {        $this->_date = 123;		self::$_name = $name;    }		function output(){		return self::$_name.' - '.$this->_date;	}} $_test1 = new Test1('张三');echo $_test1->output();