>백엔드 개발 >PHP 튜토리얼 >PHP 정적 변수 사용 예

PHP 정적 변수 사용 예

WBOY
WBOY원래의
2016-08-08 09:33:201299검색

PHP 정적 변수 사용 예

수업 테스트
{
공개 정적 함수 a(){}
공개 함수 b(){}
}
$obj = 새로운 테스트;

호출 코드

테스트::a()
$obj->a()
$obj->b();

예 정적 변수가 필요한 예를 보여줍니다

클래스 myobject {
공개 정적 $mystaticvar = 0;

함수 mymethod() {
// ::범위 연산자
// $this 범위 대신 자체 범위를 사용합니다
// $this는 클래스의 현재 인스턴스만을 나타내고, self::는 클래스 자체를 표현하기 때문입니다
self::$mystaticvar += 2;
echo self::$mystaticvar ."
";
}
}

$instance1 = 새로운 myobject();
$instance1->mymethod() // 디스플레이 2

$instance2 = 새로운 myobject();
$instance2->mymethod() // 표시 4

?>

클래스 myobject {
공개 정적 $myvar = 10;
}

echo myobject::$myvar;

// 결과: 10
?>


이 함수는 $w3sky의 값을 0으로 설정하고 호출될 때마다 "0"을 인쇄하므로 별로 유용하지 않습니다. 변수 $w3sky++를 1씩 늘려도 효과가 없습니다. 왜냐하면 이 함수가 종료되면 변수 $w3sky가 존재하지 않기 때문입니다. 이 카운트 값을 잃지 않는 카운팅 함수(www.111cn.net)를 작성하려면 $w3sky 변수를 static으로 정의하십시오.


예 정적 변수 사용 예

기능 테스트()
{
정적 $w3sky = 0;
에코 $w3sky;
$w3sky++;
}
?>
이제 test() 함수를 호출할 때마다 $w3sky 값이 출력되고 이 값이 1씩 증가합니다.

예시를 보세요


클래스 푸
{
공개 정적 $my_static = 'foo'
공개 함수 정적값() {
return self::$my_static
}
}
클래스 바는 foo를 확장합니다
{
공개 함수 foostatic() {
부모 반환::$my_static
}
}
인쇄 foo::$my_static .
$foo = 새로운 foo()
$foo->staticvalue() 인쇄
print $foo->my_static . "n" // 정의되지 않은 "속성" my_static
$foo::$my_static 인쇄
$클래스이름 = 'foo'
print $classname::$my_static . "n"; // php 5.3.0 이후에 동적으로 호출 가능
인쇄 막대::$my_static . "n"
$bar = 새로운 바()
$bar->foostatic() "n"을 인쇄합니다. ?>


이상에서는 관련 내용을 포함하여 PHP 정적 변수를 사용하는 예제를 소개했습니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.