當前位置:首頁 » 編程語言 » php對象屬性

php對象屬性

發布時間: 2022-08-06 18:05:15

① 我想問一下,php面向對象的屬性既然分公有,私有,被保護,那什麼時候分別用這三個屬性呢感謝回答。

這個問題應該是面向對象里去學,不是PHP特有或獨有的。
公有繼承(public)、私有繼承(private)、保護繼承(protected)是常用的三種繼承方式。
1. 公有繼承(public)
公有繼承的特點是基類的公有成員和保護成員作為派生類的成員時,它們都保持原有的狀態,而基類的私有成員仍然是私有的,不能被這個派生類的子類所訪問
2. 私有繼承(private)
私有繼承的特點是基類的公有成員和保護成員都作為派生類的私有成員,並且不能被這個派生類的子類所訪問。
3. 保護繼承(protected)
保護繼承的特點是基類的所有公有成員和保護成員都成為派生類的保護成員,並且只能被它的派生類成員函數或友元訪問,基類的私有成員仍然是私有的。

② PHP 中的 對象 類 屬性 實例化 到底是怎麼理解的啊·

我的理解
說一個人養了一隻小狗(定義一個對象),把狗牽過來,擺在面前,讓它確實存在(實例化)。
類,就是類別。人是一類,狗是一類。
屬性就是人的特點,長頭發、白皮膚、黑眼珠。
方法就是人會唱歌、會說話、會跑步跳躍等各種行為。
對象,就是類裡面的一個個體。人類中的每一個人都是一個對象

③ php對象屬性賦值

你這樣使用時不符合oop的規范的,成員變數在最開始只能簡單的定義,如果你要實現上述的代碼應該這樣:
class Test{
public $strtodate = 0;
public function __construct() {
$this->$strtodate = strtotime('2012-01-22');

}
}

$test = new Test();
echo $test->strtodate;

④ php中方法的屬性可以是對象嗎

類就是指一類人、事、物。對象就是類裡面具體都某個個體,所以稱為實例化一個對象。屬性就是這個對象所擁有的特性,方法就是該對象能夠做的事。

⑤ php 中的 -> 對象的方法或者屬性 一般是干什麼的用在什麼地方

你這樣用當然是不行的了,"->"符號是用在對象中的,符號左邊是對象右邊對象的屬性或者方法
例:
<?php
//一個people類
//有兩個屬性和一個方法
class
People{
public
$name;
public
$age;
function
say($word)
{
echo
$word;
}
}
//實例化一個對象
$a
=
new
People();
//對象屬性初始化
$a->name="zhangsan";
echo
$a->name;
//調用
方法
$a->say("hello");
?>

⑥ PHP類。。。聲明對象屬性

要把類中所有變數都聲明一遍,一般用private封裝在類中,然後再用構造__construct()構造一遍,再寫一些方法調用就可以了。 追問: 全都構造一遍嗎? 如果不全都構造一遍,我不明白聲明不構造那些變數有什麼用。。。初學,很迷糊 回答: 全都構造一遍,在類中運用這些變數就不用每個方法裡面都構造一遍了。比如,如果你沒有用__construct構造每個變數,以後你在每個方法中都要構造。很麻煩

⑦ 如下關於PHP對象屬性代碼為什麼輸出不了呢,大家幫幫忙

樓上的代碼是正確的,我錦上添花一下好咯。

<?
class wk{
public $name=''
public $telno=''
public $sex=''
function a($name){
return $this->name;//應該先將$name賦值給對象的name屬性
}
function b($sex){
return $this->sex;//同上,應該先將$sex賦值給對象的sex屬性
}
}
$people=new wk();
$people->a('wenkun');//此處你執行了方法,但是並沒有將方法的返回值傳遞給$name這個變數
echo $name;//$name還沒有被賦值哦,如果你打開了全部錯誤提示,此處會看到一個提示,說$name還沒有定義。如果你是希望使用對象的$name屬性,此處應該是echo $people->name;
$people->b('boy');
echo $sex;//同上

而且,對於賦值操作建議使用set開頭,要從一開始養成良好的代碼書寫習慣,即便是測試的代碼。以下是推薦的寫法,你自行印證咯。

<?php
class Demo {
protected $name = ''
public function setName($name) {
$this->name = $name;
return $this;
}
public function getName() {
return $this->Name;
}
}
$obj = new Demo();
$obj->setName('Nick');
echo $obj->getName();

這樣是不是可讀性好很多呢?

⑧ php 對對象的屬性怎麼操作

用箭頭操作

classAction{
private$name=null;

functiongetName(){
return$this->name;
}

functionsetName($name){
$this->name=$name;
}
}

⑨ php怎麼獲取對象的屬性名

使用 get_object_vars() 方法
缺點: 只能顯示 public 的
//只顯示public的
var_mp(get_object_vars($test));

處理: 在類中定義一個public 的方法, 外部對象調用即可顯示所有屬性(除了靜態屬性之外)
function showAllProperties2(){
var_mp(get_object_vars($this));
}

⑩ 為什麼PHP對象的屬性不能給它賦值為對象和資源性的變數

可以的。。只是在定義類屬性的時候不可以。

因為在聲明屬性的時候,不能書寫表達式。
實例化好的對象屬性,是可以隨意賦值的。除非是 __set 和 __get 方法製作的「偽屬性」,在方法里加了判斷。

熱點內容
sql打開bak文件 發布:2025-01-22 15:47:32 瀏覽:106
opengl伺服器源碼 發布:2025-01-22 15:40:02 瀏覽:908
python部署服務 發布:2025-01-22 15:38:46 瀏覽:282
壓縮機卡裝 發布:2025-01-22 15:37:04 瀏覽:446
每天跑步40分鍾可以緩解壓力嗎 發布:2025-01-22 15:33:24 瀏覽:448
線性表的鏈式存儲結構與順序存儲 發布:2025-01-22 15:32:45 瀏覽:295
解壓縮大師 發布:2025-01-22 15:26:51 瀏覽:386
xp訪問win7共享列印機無許可權 發布:2025-01-22 15:23:22 瀏覽:830
python中pandas 發布:2025-01-22 15:21:42 瀏覽:639
編程系列書 發布:2025-01-22 15:10:16 瀏覽:402