當前位置:首頁 » 編程語言 » php類方法

php類方法

發布時間: 2022-06-01 11:21:59

php中 類::方法

-> 這種方式只能訪問已經實例化的對象的方法和屬性。使用這種方式類,必須要實例化。不然訪問就會出錯。

:: 訪問靜態類里的方法和屬性。這種方式訪問的方法和屬性,必須是靜態聲明的。。在訪問這些方法和屬性的時候。不需要實例化這個類即可訪問。

例1:
$a = new a; //實例化A
$a->fun(); //訪問方法
echo $a->str; //訪問屬性

例2:
a::fun(); //訪問方法
a::$str; //訪問屬性

⑵ php類聲明和php類使用方法示例分享

復制代碼
代碼如下:
<?php
/**php語言是支持面向對象編程的,對於面向對象的編程,學過java和C++的人都知道啊!
*如果不清楚的去問一下就可以了。
*/
//我們來定義一個類,定義類的關鍵字是
「class」
class
computer
{
//在類裡面可以創建方法,變數等
//定義一個加法
function
add
($n1,$n2)
{
$sum
=
$n1
+
$n2;
return
$sum;
}
//定義一個減法
function
jf
($n1,$n2)
{
$sum
=
$n1
-
$n2;
return
$sum;
}
//定義一個乘法
function
cf
($n1,$n2)
{
$sum
=
$n1
*
$n2;
return
$sum;
}
}
/**
如何使用類中的方法,就要創建類的對象,用對象調用方法
下面是調用類的方法
*/
//$com
就是computer類的對象,創建對象用new關鍵字
$com
=
new
computer();
//調用類中的方法就用
對象名
->
方法名(參數,參數...)
echo
$com
->
add(1,2);
echo
$com
->
jf(1,2);
echo
$com
->
cf(1,2);
//這些方法被按鈕調用的化,就可以簡單編寫出一個計算器來,
//每個按鈕對應一個方法
?>

⑶ PHP同一個類方法調用

你好朋友
在Java的調用方法是import,而在PHP中沒有import這個函數,一般PHP中調用其他類是用到require(),具體PHP調用其他類的方法如下:
1、首先應該先有一個文件名為tool.php的文件,在文件中聲明一個類。

2、然後需要有另一個文件名為main.php的文件,在文件中調用上面的類。方法如下。

(3)php類方法擴展閱讀:

類是變數與作用於這些變數的函數的集合。使用下面的語法定義一個類:
<?php
class Cart { var $items; // 購物車中的物品
// 將 $num 個 $artnr 物品加入購物車
function add_item($artnr, $num) {
$this->items[$artnr] += $num;
} // 將 $num 個 $artnr 物品從購物車中取出
function remove_item($artnr, $num) {
if ($this->items[$artnr] > $num) {
$this->items[$artnr] -= $num; return true;
} elseif
($this->items[$artnr] == $num) {
unset($this->items[$artnr]); return true;
} else {
return false; }
}
} ?>
上面的例子定義了一個 Cart 類,這個類由購物車中的商品構成的數組和兩個用於從購物車中添加和刪除商品的函數組成。
參考資料來源:網路-php類
望採納祝你好運

⑷ php類方法中參數問題,參數怎麼是一個類名 加上變數,怎麼理解

PHP 5 可以使用類型約束。函數的參數可以指定只能為對象(在函數原型裡面指定類的名字),PHP 5.1 之後也可以指定只能為數組。
註:PHP7之後可以指定int,string等。

代表方法baz()接收的參數是一個對象,並且指定必須是Test類實例化的對象。
比如在後面加如下代碼就能正常輸出:string(5) "hello"
12345

$a=new Test(111);$a->baz($a);

但是如果換成如下代碼:

class B{}
$b=new B();
$a=new Test(111);
$a->baz($b);

就會報錯:Catchable fatal error: Argument 1 passed to Test::baz() must be an instance of Test, instance of B given
簡單意思就是:傳遞參數必須是實例化Test,你傳B的對象是不對的。

⑸ 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

?>

⑹ PHP中抽象類和抽象方法概念與用法分析

本文實例講述了PHP中抽象類和抽象方法。分享給大家供大家參考,具體如下:
一、抽象關鍵字
:abstract
抽象就是無法確切的說明,但又有一定的概念或者名稱,在PHP中聲明一個抽象類或者方法我們需要使用adstract關鍵字。
二、抽象方法和抽象類的定義
一個類中至少有一個方法是抽象的,我們稱之為抽象類。所以如果定義抽象類首先定義抽象方法。
abstract
class
class1{
abstract
function
fun1();
……
}
1、類中至少有一個抽象方法
2、抽象方法不允許有{
}
3、抽象方法前面必須要加abstract
三、抽象類和方法使用規則
抽象類的幾個特點:
1、不能被實例化,只能被繼承
2、繼承的派生類當中要把所有抽象方法重載才能實例化
實例:
<?php
abstract
class
cl1{
abstract
function
fun1();
abstract
function
fun2();
}
class
cl2
extends
cl1{
function
fun1(){
echo
"第一個";
}
function
fun2(){
echo
"第二個";
}
}
$c=new
cl2();
echo
$c->fun2();
?>
更多關於PHP相關內容感興趣的讀者可查看本站專題:《php文件操作總結》、《PHP運算與運算符用法總結》、《PHP網路編程技巧總結》、《PHP基本語法入門教程》、《php操作office文檔技巧總結(包括word,excel,access,ppt)》、《php日期與時間用法總結》、《php面向對象程序設計入門教程》、《php字元串(string)用法總結》、《php+mysql資料庫操作入門教程》及《php常見資料庫操作技巧匯總》
希望本文所述對大家PHP程序設計有所幫助。

⑺ php類的兩種訪問方法叫什麼

-> 是面向對象中調用類中的方法(或調用類裡面的變數),格式:類->方法(變數)。

:: 是面向對象中調用類中的靜態方法(或調用靜態變數), 格式:類::靜態方法(靜態變數)

⑻ php 類名::方法

::

不需要對象,
可以使用類名

直接調用
方法的。
如果
方法里
調用了
該對象的方法或屬性
(使用了$this)
那麼就不能使用::來
調用這個方法了。
你上面寫的代碼里的fun()
其實
應該設定為
靜態方法。

⑼ PHP類中的魔法方法有哪些

__construct(),__destruct(),__call(),__callStatic(),__get(),__set(),__isset(),__unset(),__sleep(),__wakeup(),__toString(),__invoke(),__set_state(),__clone()和__debugInfo()

注意:PHP 將所有以 __(兩個下劃線)開頭的類方法保留為魔術方法。所以在定義類方法時,除了上述魔術方法,建議不要以 __ 為前綴。

詳細可以查看網頁鏈接

⑽ 在php中如何設置類的屬性,如何調用類的方法

PHP訪問類的屬性、方法使用箭頭語法(->)。這里我給你一個例子供你參考:

<?php
classMyClass{//定義MyClass類
public$name;//定義了一個公有屬性
protected$_age;//定義了一個保護屬性
private$_email;//定義了一個私有屬性

publicfunctionmy_method(){//定義my_method方法
}

protectedfunction_my_method2(){//定義_my_method2方法
}
}
$obj=newMyClass;//實例化
$obj->name='noname';//設置name屬性
$obj->_age=12;//這是錯誤的,不能設置保護屬性
$obj->address='KingStreet.'//設置一個未聲明的屬性是允許的,效果和公有屬性類似,但未賦值前不能使用。
$obj->my_method()//調用公有方法
$obj->_my_method2();//這是錯誤的,不能調用保護方法

你需要理解繼承、公有、保護和私有的概念。

繼承:子類繼承父類的公有、保護屬性和方法。

公有:類的實例可以訪問的屬性和方法。

保護:只能在類的內部及其子類內部訪問的屬性和方法。

私有:只能在類的內部訪問的屬性和方法。


這是個很基礎的問題,建議你多看書。

熱點內容
linux改變所有者 發布:2025-02-10 23:04:13 瀏覽:650
源碼曹毅 發布:2025-02-10 23:04:01 瀏覽:582
odbcforsqlserver 發布:2025-02-10 22:26:37 瀏覽:600
區塊鏈數據存儲在那裡 發布:2025-02-10 22:25:48 瀏覽:689
c語言for死循環 發布:2025-02-10 22:24:08 瀏覽:523
蘋果限制訪問初始密碼 發布:2025-02-10 22:21:31 瀏覽:759
為什麼安卓手機一年後卡頓 發布:2025-02-10 22:15:39 瀏覽:732
職工信息管理系統設計c語言 發布:2025-02-10 22:15:30 瀏覽:119
預演算法的理念 發布:2025-02-10 22:15:25 瀏覽:133
如何結合商圈顧客特點配置貨品 發布:2025-02-10 22:10:59 瀏覽:594