php靜態(tài)變量有什么用

小編給大家分享一下php靜態(tài)變量有什么用,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

創(chuàng)新互聯(lián)是一家專注于網(wǎng)站設(shè)計制作、網(wǎng)站設(shè)計與策劃設(shè)計,利川網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)10余年,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:利川等地區(qū)。利川做網(wǎng)站價格咨詢:18982081108

什么是靜態(tài)變量?

靜態(tài)變量 類型說明符是static。

靜態(tài)變量屬于靜態(tài)存儲方式,其存儲空間為內(nèi)存中的靜態(tài)數(shù)據(jù)區(qū)(在靜態(tài)存儲區(qū)內(nèi)分配存儲單元),該區(qū)域中的數(shù)據(jù)在整個程序的運行期間一直占用這些存儲空間(在程序整個運行期間都不釋放),也可以認為是其內(nèi)存地址不變,直到整個程序運行結(jié)束。

靜態(tài)變量雖在程序的整個執(zhí)行過程中始終存在,但是在它作用域之外不能使用。

只要在變量前加上關(guān)鍵字static,該變量就成為靜態(tài)變量了。

php靜態(tài)變量的作用

1、在函數(shù)內(nèi)部修飾變量。靜態(tài)變量在函數(shù)被調(diào)用的過程中其值維持不變。

<?php
function testStatic() {
    static $val = 1;
    echo $val."<br />";;
    $val++;
}
testStatic();   //output 1
testStatic();   //output 2
testStatic();   //output 3
?>

程序運行結(jié)果:

1
2
3

2、在類里修飾屬性,或方法。

修飾屬性或方法,可以通過類名訪問,如果是修飾的是類的屬性,保留值

<?php
class Person {
    static $id = 0;
 
    function __construct() {
        self::$id++;
    }
 
    static function getId() {
        return self::$id;
    }
}
echo Person::$id;   //output 0
echo "<br/>";
 
$p1=new Person();
$p2=new Person();
$p3=new Person();
 
echo Person::$id;   //output 3
?>

程序運行結(jié)果:

0
3

3、在類的方法里修飾變量。

<?php
class Person {
    static function tellAge() {
        static $age = 0;
        $age++;
        echo "The age is: $age
";
    }
}
echo Person::tellAge(); //output 'The age is: 1'
echo Person::tellAge(); //output 'The age is: 2'
echo Person::tellAge(); //output 'The age is: 3'
echo Person::tellAge(); //output 'The age is: 4'
?>

程序運行結(jié)果:

The age is: 1 The age is: 2 The age is: 3 The age is: 4

以上是php靜態(tài)變量有什么用的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

網(wǎng)頁標(biāo)題:php靜態(tài)變量有什么用
當(dāng)前鏈接:http://bm7419.com/article0/jdjsoo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、定制開發(fā)、ChatGPT、外貿(mào)網(wǎng)站建設(shè)、、定制網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)