This article introduces you to the analysis of PHP classes and constructors, including class creation, fields and methods, constructors, etc.
----Creation of a class----
php uses the keyword class to create a class and uses a pair of curly brackets
For example:
class name{ public $n=""; private $u=""; public function name() { $n="233"; $u="23333"; } public function rename($newn){ $this->n=$newn;//this表示这个类 } }
No semicolon at the end. Then $n, $u are fields; name() is a constructor (construct() can also define a constructor, see below for details), which can assign values to fields; rename() is a method.
----Fields and methods----
Compare
$obj=new name(); echo $obj->n;
with
$obj=new name(); echo $obj->u;
The former is executable, but the latter is not possible because private is declared before $u. This is similar to c++.
Code:
public static $nm ="2333333333333333" ;
declares a static field for the function.
The variable can be accessed directly through the class name and ::
echo name::$nm;
This is also similar to c++.
In php, you can also access static fields in the class through self::+$+Variable name. At this time, self is equivalent to $this->.
----Constructor----
In php5 and earlier versions, the constructor has the same name as the class
In php5 and later versions, the magic word construct() can define the constructor
class name{ public $n=""; private $u=""; public function construct() { $n="233"; $u="23333"; } public function rename($newn){ $this->n=$newn; } }
The constructor can have parameters
construct($name="",$sex="man",$age=0){}
When declaring the object
$obj= new name("我","man",28);
If no parameters are given at this time, the default value is the value after =.
The above is the detailed content of Explanation of the relationship between classes and constructors in php. For more information, please follow other related articles on the PHP Chinese website!