導航:首頁 > 編程語言 > phpconstruct參數

phpconstruct參數

發布時間:2023-11-19 19:23:34

php __construct 傳參問題

$std = new student(100);//傳入scores
另外student的構造函數應該這樣寫
function __construct($num)
{
parent::__construct('someone',24,'123445');//調用父類的構造函數完成初始化
$this->scores = $num;
}
至於父類的構造函數參數可以從student類傳進瞎埋來,像這樣
function __construct($name,$age,$tel,$num)
或磨早螞者只有一個參數的話使用數睜森組傳入,像這樣
function __construct($arg)
{
parent::__construct($arg['name'],$arg['age'],$arg['tel']);//調用父類的構造函數完成初始化
$this->scores = $arg['num'];
}

echo $stu->name;//這句為什麼列印不出來?
是$std吧?

❷ PHP構造函數傳遞值的問題

__construct($hostname)裡面的參數是構造函數的參數,只能在構造函數內部調用,
public $hostname;這是類的參數,整個類內部包括繼承類都可以調用

第二種的參數只能在構造函數中使用,而第一種,則將傳來的參數賦值給類的變數,所以第一種的hostname整個類內部的方法都可以使用$this->hostname來調用

❸ 在php中,子類extends繼承了父類,當子類和父類同時存在構造函數__construct先執行哪一個呢

1、如果父類和子類中都沒有顯式的定義__construct,在實例化子類對象時,只會隱含的調用子類自己的構造方法。

2、如果父類中有顯式的構造方法__construct,而子類中沒有定義__construct,在實例化子類對象時,就會調用父類中的構造方法。

3、如果父類和子類中都顯式的定義了__construct,在實例化子類對象時,只會調用子類自己的構造方法(這就像是子類重構了父類的構造方法),而如果也想要調用父類的構造方法的話,就需要在子類的__construct 方法中顯式的調用,(如 __construct(){ parent::_construct();})。


(3)phpconstruct參數擴展閱讀

子類的構造函數名與子類名相同。

在子類里父類的構造函數不會自動執行。

要在子類里執行父類的構造函數,必須執行類似以下語句:

$this->[父類的構造函數名()]

類的構造函數統一命名為__construct()。

子類的構造函數名也是__construct()(也是廢話)。

在子類里父類的構造函數會不會執行,分兩種情況:

1、如子類不定義構造函數 __construct(),則父類的構造函數默認會被繼承下來,且會自動執行。

2、如子類定義了構造函數 __construct(),因為構造函數名也是__construct(),所以子類的構造函數實際上是覆蓋(override)了父類的構造函數。這時執行的是該子類的構造函數。

這時如果要在子類里執行父類的構造函數,必須執行類似以下語句:parent::__construct();

❹ 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()//沒有任何輸出(其實是有輸出,但是輸出為空)

❺ php如何傳遞類參數

PHP類中,可能有多個屬性參數。當使用new創建一個對象的時候,可能需要完成初始化操作,需要從外邊傳遞參數進來。下面演示具體過程:
?php
class Test {
//定義私有變數name ,age
private $name, $age;
//構造函數,初始化的時候最先執行
public function __construct($name, $age) {
$this-
name = $name;
$this->age = $age;
}
public function showMsg() {
return "大家好,我叫".$this->name.";今年".$this->age."歲了!";
}
}
//定義參數
$name="網路知道";
$age=10;
//初始化類的時候傳遞參數
$te=new Test($name, $age);
echo $te->showMsg();
//輸出結果:大家好,我叫網路知道;今年10歲了!
?>

❻ 關於php構造函數

用於類的初始化,在新建一個對象時被立即執行,既

new base();

此時會執行__construct()

$this是指類(實例)自身

❼ php類定義了屬性,類中的方法要使用默認值怎麼辦

每個方法都必須要定義的參數就可以直接定義個類屬性了,如果不變的話可以直接public $arg='xxx';
如果隨著場景不同這個值可能會發生變化,就把賦值放到構造方法里
public function __construct($aa)
{
$this->arg = $aa;
}
$obj = new exp($aa);
下面的方法就不用傳參數了,直接調用$this->arg就可以了
再如果每次調用不通的方法,變數arg都不同,就不要定義屬性了,直接給方法傳值就可以了。

閱讀全文

與phpconstruct參數相關的資料

熱點內容
內核編譯之後安裝到哪 瀏覽:58
單片機加場效應管 瀏覽:152
怎麼關閉appstore 瀏覽:474
學編程入門語言 瀏覽:307
安卓機為什麼總是出現升級提示 瀏覽:133
b樹java實現 瀏覽:943
亞馬遜雲伺服器到期了怎麼續費 瀏覽:850
我的世界網易如何在伺服器裡面加光影 瀏覽:284
nat地址訪問外網伺服器 瀏覽:966
怎樣用java編譯一個心形 瀏覽:934
如何使用python中的pygame 瀏覽:836
python實用小工具 瀏覽:24
怎麼在安卓手機上去除馬賽克 瀏覽:235
農行濃情通app怎麼下載 瀏覽:533
怎麼把原文件夾找回來 瀏覽:535
俄羅斯方塊實現python思路 瀏覽:735
漢語拼音英語編譯代碼 瀏覽:501
程序員應具備的能力 瀏覽:606
手機石墨文檔文件夾訪問許可權 瀏覽:656
客戶端如何登陸域文件伺服器 瀏覽:530