> php教程 > php手册 > php教程:很神奇的static(静态化)属性

php教程:很神奇的static(静态化)属性

WBOY
풀어 주다: 2016-06-06 20:09:36
원래의
969명이 탐색했습니다.

今天下午呢,一个对PHP一见钟情的入门级PHPER来问我,::指代什么意思。我呢,就顺便写了这篇很简单的基础教程。::其实就是调用静态方法或者静态变量的一个方式:这么说吧,一般呢,我们如果把一个变量或者一个方法封装到一个Class(类)里面,我们就不能直接

今天下午呢,一个对PHP一见钟情的入门级PHPER来问我,::指代什么意思。我呢,就顺便写了这篇很简单的基础教程。::其实就是调用静态方法或者静态变量的一个方式:这么说吧,一般呢,我们如果把一个变量或者一个方法封装到一个Class(类)里面,我们就不能直接地调用这个方法或者是变量。废话也不多说什么,我们来上点代码说明说明。

不能直接调用变量或者类

<?php ? ??
class?example{ ??
private?static?$itluren=100; ??
public?function?__itluren()?{????? ??
echo?'itluren.com';???? ??
} ??
} ??
echo?(emptyempty($itluren))?'空的':'有爱的'; ??
__itluren();???? ??
?>??
로그인 후 복사

如果我们这样写,那无疑地,马上会报错:原因呢,外部调用$itluren变量不成功(报错却不是因为他),__itluren()方法不能正确调用,是未定义__itluren()函数的情况。如果要正常使用,那我们需要实例化这个Class,也就下一个例子一样。

实例化后调用

<?php ? ??
class?example{ ??
private?static?$itluren=100; ??
public?function?__itluren()?{????? ??
echo?'itluren.com';???? ??
} ??
} ??
$itluren_class=new?example; ??
echo?(emptyempty($itluren_class->$itluren))?'空的':'有爱的'; ??
$itluren_class->__itluren();???? ??
?>??
로그인 후 복사

这样子,我们就可以看到“有爱的itluren.com”字样了。而static是干什么用的呢,我们也可以再来看看下面的例子!!

static上场了啊

<?php ? ??
class?example{ ??
private?static?$itluren=100; ??
public?function?__itluren()?{????? ??
echo?'itluren.com';???? ??
} ??
} ??
?>??
로그인 후 복사

我们单独使用echo (empty(example::$itluren))?'空的':'有爱的'; 这下子只能看到“有爱的”,原因就是通过::我们成功地调用了$itluren介个变量,而使用example::__itluren();确实会报错,原因就是__itluren()方法没有设置static属性,所以我们通过::成功调用。怎么样,这下子明了了没有啊?

一般呢,我们都比较少遇到static(静态化)这个属性,一般都是定义类的时候用到,不过呢,这个却也是个非常关键的一个关键字,基础,却异常的重要的说,所以我们有必要清清楚楚的。如果还不太明白,建议自己动手做几次!!

声明: 本文采用 BY-NC-SA 协议进行授权 | IT路人
转载请注明转自《php教程:很神奇的static(静态化)属性》

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿