當前位置:首頁 » 編程語言 » 構造函數php

構造函數php

發布時間: 2022-02-10 09:40:00

1. php中子類有構造函數如何調用父類中的構造函數,最好能舉個簡單的例子

class A{
function __contruct($num){
echo "aaa";
}
}
class B extends A{
function __contruct(){
echo "bbb";
A:: __contruct($num) //第一種調用父類構造函數的方法
parent:: __contruct($num) //第二種調用父類構造函數的方法
}
}

2. php構造函數 function__construct()顯示錯誤,為什麼啊 代碼如下

function __construct() 沒錯
我直接把你代碼貼進編輯器,直接一個語法錯誤。
function【注意這里需要至少一個空格】__construct

3. php 構造函數格式,具體該怎麼寫應該注意什麼呢

在PHP里,如果你沒有手寫構造函數,則php在實例化這個對象的時候,會自動為類成員以及類方法進行初始化,分配內存等工作,但是有些時候不能滿足我們的要求,比如我們要在對象實例化的時候傳遞參數,那麼就需要手動編寫構造函數了,手寫構造函數有兩種寫法,只是表現形式不同,其實本質一樣
class test
{
function __construct()
{
//your code
}
}
class test
{
function test()//如果方法名跟類名字一樣,將被認為是構造函數
{
//your code
}
}
以上為兩種基本形式
我剛才說的傳遞參數進行實例化的例子,簡單的寫一個參考

class test
{
public $test = '';
function __construct($input = '')
{
$this->test = $input;
}
function getTest()
{
return $this->test;
}
}
$a = new test('a test');
echo $a->getTest()//將輸出 a test
$b = new test();
echo $a->getTest()//沒有任何輸出(其實是有輸出,但是輸出為空)

4. php構造函數

類中有函數和變數。
類中定義的變數叫做屬性,
類中的函數叫做方法。
$this是指類本身,
$this->base()
指調用當前類中的base()方法。
構造函數可有可無。先可以不考慮構造函數的功能。
構造函數只是創建類的實例的時候自動被調用。其他地方也跟普通函數一樣。
類中與類名同名的函數成為構造函數。
等你寫多代碼以後自然而然的想寫構造函數了。那時候肯定會理解構造函數的用處。

5. php構造函數的PHP 4 構造函數

當函數與類同名時,這個函數將成為構造函數。如果一個類沒有構造函數,則調用基類的構造函數,如果有的話 。 <?phpclassAuto_CartextendsCart{functionAuto_Cart(){$this->add_item(10,1);}}?>上文定義了一個 Auto_Cart 類,即 Cart 類加上一個構造函數,當每次使用「new」創建一個新的 Auto_Cart 類實例時,構造函數將自動調用並將一件商品的數目初始化為「10」。構造函數可以使用參數,而且這些參數可以是可選的,它們可以使構造函數更加有用。為了依然可以不帶參數地使用類,所有構造函數的參數應該提供默認值,使其可選。 <?phpclassConstructor_CartextendsCart{functionConstructor_Cart($item=10,$num=1){$this->add_item($item,$num);}}//買些同樣的無聊老貨$default_cart=newConstructor_Cart;//買些實在貨...$different_cart=newConstructor_Cart(20,17);?>也可以使用 @ 操作符來抑制發生在構造函數中的錯誤。例如 @new。 <?phpclassA{functionA(){echoIamtheconstructorofA.<br>/n;}functionB(){.<br>/n;echoIamnotaconstructorinA.<br>/n;}}classBextendsA{functionC(){echoIamaregularfunction.<br>/n;}}//調用B()作為構造函數$b=newB;?>析構函數是一種當對象被銷毀時,無論使用了 unset() 或者簡單的脫離范圍,都會被自動調用的函數。php 中沒有析構函數。可以用 register_shutdown_function() 來替代模擬大多數析構函數的效果。

6. PHP 什麼是構造函數

魔術方法之一,在某種特定條件下會自動觸發的方法,也可以叫函數,

構造函數,在類被實例化成對象時,會自動調用的函數(方法),不需要你手動調用。

一般做對象的初始化,數據的初始化,基於同一個類的每個對象都有相同的屬性跟方法,

但是到具體的值是不一樣的,例如: 人都有名字,但是名字會不一樣,所以需要做初始化。

<?php

classPerson{

private$name;
publicfunction__construct($name){
$this->name=$name;
}
publicfunctiongetName(){
return$this->name;
}
}

$p1=newPerson('天');

echo$p1->getName();

7. php 多個構造函數要怎麼寫

php中,類 只允許有一個構造函數 __construct 允許有多個參數的,如果參數太多可以考慮傳遞一個數組參數

8. 究竟PHP的構造函數有什麼用途

就是在你用new創建那個class的時候,class里的構造函數就自動執行了,不需要你再去調用
用途一般是做配置類初始化信息,比如加個類全局變數什麼的

9. PHP類的構造方法

構造方法是類中的一個特殊方法。當使用 new 操作符創建一個類的實例時,構造方法將會自動調用,其名稱必須是 __construct() 。所以通常用它執行一些有用的初始化任務。該方法無返回值。
如果子類中定義了構造函數則不會暗中調用其父類的構造函數。要執行父類的構造函數,需要在子類的構造函數中調用 parent::__construct()。

與構造方法對應的就是析構方法,析構方法會在某個對象的所有引用都被刪除或者當對象被顯式銷毀之前執行的一些操作或者功能。析構函數不能帶有任何參數,其名稱必須是 __destruct() 。
同樣,如果子類中定義了析構函數則不會暗中調用其父類的析構函數。要執行父類的析構函數,需要在子類的析構函數中調用 parent::__destruct()。

注意:在析構函數中拋出一個異常會導致致命錯誤。
<?php

class Construct{
protected $a;
protected $b;
function __construct($a,$b){ //定義構造函數
$this->a=$a;
$this->b=$b;
}
function __destruct(){ //重新定義為初始值
$result=0;
echo '恢復乘積的初始值:'.$result;
}
}

class son extends construct{
private $c;
function __construct($c){
parent::__construct(6,10); //調用父類的構造方法,使用方法:parent::__construct(); 有參數加參數
$this->c=$c;
}
function show(){
$result=$this->a*$this->b*$this->c;
print 'abc的乘積是:'.$result.' ';
}
function __destruct(){
parent::__destruct(); //調用父類的析構函數,使用方式:parent::__destruct();
}
}

$test=new son(12); //實例化對象
$test->show(); //abc的乘積是:720 恢復乘積的初始值:0

?>

10. 請問PHP構造函數的含義

php的兩大oop使用型函數:構造函數(__construct)和析構函數(__destruct );

構造函數:當在某一頁面寫了眾多函數,其中就包括構造函數,當你調用其中任一函數時,都將在調用此函數前先調用構造函數,如:你把鏈接資料庫代碼寫到構造函數裡面,然後在使用增刪改查時,就不用再寫連接s資料庫語句了,因為有構造函數在,你就只用寫增刪改查類sql語句就可以了。
析構函數:和構造函數相反,在同一頁面內,有眾多函數,其中有析構函數,當你調用了某一函數之後,會自動執行析構函數,比如說你的增刪改查用完了,是不是要關閉資料庫連接來釋放內存?析構函數就是這樣用的。

熱點內容
安卓60腳本自啟 發布:2025-01-04 16:45:53 瀏覽:753
角色高光演算法 發布:2025-01-04 16:45:49 瀏覽:191
王者周年福利密碼是什麼 發布:2025-01-04 16:30:37 瀏覽:36
聯通北方伺服器上不去怎麼回事 發布:2025-01-04 16:28:42 瀏覽:976
開源伺服器雲存儲多少錢 發布:2025-01-04 16:10:45 瀏覽:666
我的世界泥土商店伺服器8月 發布:2025-01-04 15:58:40 瀏覽:822
怎麼在電腦上重啟機房伺服器 發布:2025-01-04 15:40:02 瀏覽:869
攝影後期電腦配置i5怎麼樣 發布:2025-01-04 15:39:19 瀏覽:405
linux橋接設置 發布:2025-01-04 15:39:07 瀏覽:61
安卓屏幕怎麼設置成老人用的 發布:2025-01-04 15:33:53 瀏覽:318