我已经注意到__construct有很多类。我读了一些书,上网浏览了一下,但我找不到我能理解的解释。我只是从面向对象编程开始。
我想知道是否有人能给我一个大概的概念,然后是一个简单的例子,它是如何与PHP一起使用的?
我已经注意到__construct有很多类。我读了一些书,上网浏览了一下,但我找不到我能理解的解释。我只是从面向对象编程开始。
我想知道是否有人能给我一个大概的概念,然后是一个简单的例子,它是如何与PHP一起使用的?
当前回答
让我先解释一下__construct(),而不是先使用方法…关于__construct()要知道的一件事是,它是一个内置函数,好吧,让我在PHP中称它为方法。正如print_r()是用于过程的,__construct()是用于OOP的内建对象。
话虽如此,让我们来探索一下为什么应该使用这个名为__construct()的函数。
/*=======Class without __construct()========*/
class ThaddLawItSolution
{
public $description;
public $url;
public $ourServices;
/*===Let us initialize a value to our property via the method set_name()==== */
public function setName($anything,$anythingYouChoose,$anythingAgainYouChoose)
{
$this->description=$anything;
$this->url=$anythingYouChoose;
$this->ourServices=$anythingAgainYouChoose;
}
/*===Let us now display it on our browser peacefully without stress===*/
public function displayOnBrowser()
{
echo "$this->description is a technological company in Nigeria and our domain name is actually $this->url.Please contact us today for our services:$this->ourServices";
}
}
//Creating an object of the class ThaddLawItSolution
$project=new ThaddLawItSolution;
//=======Assigning Values to those properties via the method created====//
$project->setName("Thaddlaw IT Solution", "https://www.thaddlaw.com", "Please view our website");
//===========Let us now display it on the browser=======
$project->displayOnBrowser();
__construct()让你的生活非常简单,想象一下我通过该方法为这些属性赋值所花费的时间。从上面的代码中,我创建了一个对象,它是第一个,然后在最终在浏览器上显示它之前为第二个属性赋值。但是在创建对象时使用__construct(),即$project= new ThaddLawItSolution;您可以在创建对象时立即执行为该方法赋值的操作,即。
$project=new ThaddLawItSolution("Thaddlaw IT Solution", "https://www.thaddlaw.com","Please view our website");
//===现在使用__constructor=====
只需删除名为setName的方法并放入__construct();当创建一个对象时,你立即赋值。这就是整个__construct()方法背后的意义。但请注意,这是一个内置的方法或函数
其他回答
构造函数允许在创建对象时初始化对象的属性。
如果你创建了__construct()函数,当你从类中创建对象时,PHP会自动调用这个函数。
https://www.w3schools.com/php/php_oop_constructor.asp
__construct只是简单地启动一个类。假设您有以下代码;
Class Person {
function __construct() {
echo 'Hello';
}
}
$person = new Person();
//the result 'Hello' will be shown.
我们没有创建另一个函数来响应单词“Hello”。它只是表明关键字__construct在初始化类或对象时非常有用。
让我先解释一下__construct(),而不是先使用方法…关于__construct()要知道的一件事是,它是一个内置函数,好吧,让我在PHP中称它为方法。正如print_r()是用于过程的,__construct()是用于OOP的内建对象。
话虽如此,让我们来探索一下为什么应该使用这个名为__construct()的函数。
/*=======Class without __construct()========*/
class ThaddLawItSolution
{
public $description;
public $url;
public $ourServices;
/*===Let us initialize a value to our property via the method set_name()==== */
public function setName($anything,$anythingYouChoose,$anythingAgainYouChoose)
{
$this->description=$anything;
$this->url=$anythingYouChoose;
$this->ourServices=$anythingAgainYouChoose;
}
/*===Let us now display it on our browser peacefully without stress===*/
public function displayOnBrowser()
{
echo "$this->description is a technological company in Nigeria and our domain name is actually $this->url.Please contact us today for our services:$this->ourServices";
}
}
//Creating an object of the class ThaddLawItSolution
$project=new ThaddLawItSolution;
//=======Assigning Values to those properties via the method created====//
$project->setName("Thaddlaw IT Solution", "https://www.thaddlaw.com", "Please view our website");
//===========Let us now display it on the browser=======
$project->displayOnBrowser();
__construct()让你的生活非常简单,想象一下我通过该方法为这些属性赋值所花费的时间。从上面的代码中,我创建了一个对象,它是第一个,然后在最终在浏览器上显示它之前为第二个属性赋值。但是在创建对象时使用__construct(),即$project= new ThaddLawItSolution;您可以在创建对象时立即执行为该方法赋值的操作,即。
$project=new ThaddLawItSolution("Thaddlaw IT Solution", "https://www.thaddlaw.com","Please view our website");
//===现在使用__constructor=====
只需删除名为setName的方法并放入__construct();当创建一个对象时,你立即赋值。这就是整个__construct()方法背后的意义。但请注意,这是一个内置的方法或函数
__construct是在PHP5中引入的,它是定义你的构造函数的正确方法(在PHP4中,你使用类的名称作为构造函数)。 你不需要在你的类中定义构造函数,但是如果你想在对象构造中传递任何参数,那么你就需要一个构造函数。
一个例子是这样的:
class Database {
protected $userName;
protected $password;
protected $dbName;
public function __construct ( $UserName, $Password, $DbName ) {
$this->userName = $UserName;
$this->password = $Password;
$this->dbName = $DbName;
}
}
// and you would use this as:
$db = new Database ( 'user_name', 'password', 'database_name' );
其他的都在PHP手册中解释了:点击这里
__construct总是在创建新对象时调用,或者在初始化时调用。它适用于对象在使用之前可能需要的任何初始化。__construct方法是类中执行的第一个方法。
class Test
{
function __construct($value1,$value2)
{
echo "Inside Construct";
echo $this->value1;
echo $this->value2;
}
}
//
$testObject = new Test('abc','123');