php什麼時候用靜態方法

angryTom
發布: 2023-02-27 12:38:01
原創
5217 人瀏覽過

php什麼時候用靜態方法

php什麼時候用靜態方法

靜態方法:

#從程式運行開始就實例產生內存,所以可以直接調用,效率會高很多,但是靜態內存是有限制的,實例太多,程序直接啟動不了,靜態內存會常駐。

非靜態方法:

實例方法開始產生內存,在呼叫時申請零散的內存,所以效率會慢很多,非靜態的用完就釋放了。

差異:

1. 靜態方法不用 new,用起來省事。

2. 靜態快,效率高,因為程式運行開始 就實例產生內存,用完還在,沒有釋放。

3. 非靜態在呼叫的時候產生內存,用完就釋放了。

一般工具類別中使用靜態方法
如:

class Helper{
    public static function fun1(){}
    public static function fun2(){}
}
登入後複製

如果對同一類別的任何一個物件而言,該方法要做的事情都是一樣的,而跟這個物件本身沒什麼關係,一般這個方法可以定義為一個靜態方法。
例如我要取得客戶端的IP 位址,這個方法一般和業務邏輯類沒什麼關係,那麼我可以定義一個工具類,其中定義一個方法:getClientIP()

class Helper{
public static function getClientIP(){
    $ip = $_SERVER["HTTP_X_CLUSTER_CLIENT_IP"];
    if (strlen($ip) <= 0) {
        $ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
    }
    if (strlen($ip) <= 0) {
        $ip = $_SERVER["HTTP_CLIENT_IP"];
    }
    if (strlen($ip) <= 0) {
        $ip = $_SERVER["REMOTE_ADDR"];
    }
    return $ip;
}
}
登入後複製

 更多PHP相關知識,請造訪PHP中文網

以上是php什麼時候用靜態方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板