PHP的靜態變數管理

2021-06-17 18:18:44 字數 1723 閱讀 8098

php的靜態變數需要集中管理,比如一些系統標識或者型別標識。我的乙個想法是用型別類來管理。

乙個型別基類:

<?php

/** * @author jixiaolong

* @todo 型別基類

* */

class typebase

/*** */

function __destruct()

//modify by jixiaolong 2013/4/5

public static function gettypenamebyid($type_id)

else

return $name; }

//add by jixiaolong 2013/4/5

public static function toarray()

}?>

擴充套件出的乙個引數型別類:

<?php

/** * @author jixiaolong

* @todo 引數型別

* */

require_once 'typebase.cls.php';

class typeparam extends typebase

/***

*/function __destruct()

public static function toarray()

/*** @author jixiaolong 2013-5-13上午09:22:35

* @todo 判斷是否符合某種型別

* @param var $value 變數

* @param enum $type 型別

* @throws exception

* @return boolean 是/否

*/public static function istype(&$value,$type)

break;

case self::type_double:

if (is_double($value))

break;

case self::type_exist:

if (isset($value))

break;

case self::type_array:

if (is_array($value))

break;

case self::type_string:

if (is_string($value))

break;

case self::type_double:

if (is_double($value))

break;

case self::type_positive_integer:

if (is_int($value) && $value > 0)

break;

case self::type_bool:

if (is_bool($value))

break;

default:

throw new exception('沒有定義的資料型別', 0);

}return false;

}public static function gettypenamebyid($type_id)

else

return $name; }}

?>

php靜態變數

在函式執行完後,變數值仍然儲存,並沒有變回初始設定的值0。function test test test test 結果 1 23可以發現a設定靜態變數之後,每次 a的值都儲存下來了。我剛開始還以為這個變數變成了全域性變數,測試發現這個變數 a依然只能在函式裡呼叫,在函式外是不能呼叫的。我們再來看看...

php 靜態變數static

靜態變數只存在於函式作用域內,也就是說,靜態變數只存活在棧中。一般的函式內變數在函式結束後會釋放,比如區域性變數,但是靜態變數卻不會。就是說,下次再呼叫這個函式的時候,該變數的值會保留下來。只要在變數前加上關鍵字static,該變數就成為靜態變數了。functiontest 第一次執行,nm tes...

PHP的靜態變數介紹

2010 09 01 靜態變數只存在於函式作用域內,也就是說,靜態變數只存活在棧中。一般的函式內變數在函式結束後會釋放,比如區域性變數,但是靜態變數卻不會。就是說,下次再呼叫這個函式的時候,該變數的值會保留下來。只要在變數前加上關鍵字static,該變數就成為靜態變數了。01 02functiont...