如何理解PHP类的属性,属性声明和初始化怎样做?
Admin 2022-10-09 群英技术资讯 1368 次浏览
这篇文章给大家分享的是如何理解PHP类的属性,属性声明和初始化怎样做?。小编觉得挺实用的,因此分享给大家做个参考,文中的介绍得很详细,而要易于理解和学习,有需要的朋友可以参考,接下来就跟随小编一起了解看看吧。类的变量成员叫做“属性”,或者叫“字段”、“特征”,在本文档统一称为“属性”。属性声明是由关键字 public,protected 或者 private 开头,然后跟一个普通的变量声明来组成。属性中的变量可以初始化,但是初始化的值必须是常数,这里的常数是指 PHP 脚本在编译阶段时就可以得到其值,而不依赖于运行时的信息才能求值。
Note:
为了向后兼容 PHP 4,PHP 5 声明属性依然可以直接使用关键字 var 来替代(或者附加于)public,protected 或 private。但是已不再需要 var 了。在 PHP 5.0 到 5.1.3,var 会被认为是废弃的,而且抛出 E_STRICT 警告,但是 5.1.3 之后就不再认为是废弃,也不会抛出警告。
如果直接使用 var 声明属性,而没有用 public,protected 或 private 之一,PHP 5 会将其视为 public。
在类的成员方法里面,可以用 ->(对象运算符):$this->property(其中 property 是该属性名)这种方式来访问非静态属性。静态属性则是用 ::(双冒号):self::$property 来访问。
Example #1 属性声明
class SimpleClass
{
//错误的属性声明
public $var1 = 'hello '.'world';
public $var2 = <<<EOD
hello world
EOD;
public $var3 = 1+2;
public $var4 = self::myStaticMethod();
public $var5 = $myVar;
//正确的属性声明
public $var6 = myConstant;
public $var7 = array(true,false);
//PHP5.3.0及以后,下面的声明也正确
public $var8 = <<<'EOD'
hello world
EOD;
}
跟 heredocs 不同,nowdocs 可在任何静态数据上下文中使用,包括属性声明。
Example #2 示例:使用 nowdoc 初始化属性
//PHP5.3.0起
public $var = <<<'EOD'
hello world
EOD;
Note:
Nowdoc 支持是在 PHP 5.3.0 新增的。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
简介检测一个类是否可以使用 foreach 进行遍历的接口。无法被单独实现的基本抽象接口。相反它必须由 IteratorAggregate 或 Iterator 接口实现。Note:实现此接口...
workerman引入db类错误解决方法:在访问数据库的时候加上try catch捕获错误,捕获到错误是2006或者2013的时候表示连接失效,这时候重新连接数据库即可。
1functioncombineImage($head_img,$middle_img,$footer_img,$save_path){2$source_w=400;3$source_h=1142;4//取头部图片大小5$head_size=getimagesize($head_img);6$head_heigh
PHP向它运行的任何脚本提供了大量的预定义常量。不过很多常量都是由不同的扩展库定义的,只有在加载了这些扩展库时才会出现,或者动态加载后,或者在编译时已经包括进去了。有八个魔术常量他们的值随着他们在代码中的位置改变而改变。
这篇文章主要为大家介绍了laravel源码分析队列Queue方法示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步早日升职加薪<BR>
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008