PHP笔记之:基于面向对象设计的详解


Posted in PHP onMay 14, 2013

public 表示全局,类内部外部子类都可以访问;

<?php     class Test{
         public  $name='Janking',
                 $sex='male',
                 $age=23;
         function __construct(){
             echo $this->age.'<br />'.$this->name.'<br />'.$this->sex.'<br />';
         }
          function func(){
             echo $this->age.'<br />'.$this->name.'<br />'.$this->sex.'<br />';
         }
     }
 
 $P=new Test();
 echo '<br /><br />';
 $P->age=100;
 $P->name="Rainy";
 $P->sex="female";
 $P->func();
 ?> 
Public

private表示私有的,只有本类内部可以使用;
<?php     class Test{
         private  $name='Janking',
                 $sex='male',
                 $age=23;
         function __construct(){
             $this->funcOne();
         }
          function func(){
             echo $this->age.'<br />'.$this->name.'<br />'.$this->sex.'<br />';
         }
         private function funcOne(){
             echo $this->age.'<br />'.$this->name.'<br />'.$this->sex.'<br />';
         }
     }
 
 $P=new Test();
 echo '<br /><br />';
 $P->func();
 $P->age=100;        // Cannot access private property Test::$age 
 $P->name="Rainy";   // Cannot access private property Test::$name 
 $P->sex="female";   // Cannot access private property Test::$female
 $P->funcOne();      // Call to private method Test::funcOne() from context ''
 ?> 
Private

protected表示受保护的,只有本类或子类或父类中可以访问; 和封装有关的魔术方法:

 __set():是直接设置私有成员属性值时,自动调用的方法

 __get():是直接获取私有成员属性值时,自动调用的方法

 __isset(); 是直接isset查看对象中私有属性是否存时自动调用这个方法

 __unset(); 是直接unset删除对象中私有属性时,自动调用的方法

PHP 相关文章推荐
PHP开发文件系统实例讲解
Oct 09 PHP
php+mysql实现无限级分类 | 树型显示分类关系
Nov 19 PHP
Discuz! 5.0.0论坛程序中加入一段js代码,让会员点击下载附件前自动弹出提示窗口
Apr 18 PHP
用php过滤危险html代码的函数
Jul 22 PHP
PHP 截取字符串 分别适合GB2312和UTF8编码情况
Feb 12 PHP
PHP中date()日期函数有关参数整理
Jul 19 PHP
ThinkPHP框架任意代码执行漏洞的利用及其修复方法
Jul 04 PHP
php格式输出文件var_export函数实例
Nov 15 PHP
PHP下载生成的csv文件及问题总结
Aug 06 PHP
什么是OneThink oneThink后台添加插件步骤
Apr 13 PHP
PHP排序算法之归并排序(Merging Sort)实例详解
Apr 21 PHP
yii2 url重写并隐藏index.php方法
Dec 10 PHP
php在window iis的莫名问题的测试方法
May 14 #PHP
PHP处理excel cvs表格的方法实例介绍
May 13 #PHP
PHP 处理TXT文件(打开/关闭/检查/读取)
May 13 #PHP
基于wordpress主题制作的具体实现步骤
May 10 #PHP
php Hex RGB颜色值互换的使用
May 10 #PHP
基于PHP生成静态页的实现方法
May 10 #PHP
深入PHP数据缓存的使用说明
May 10 #PHP
You might like
基于PHP导出Excel的小经验 完美解决乱码问题
2013/06/10 PHP
前端必学之PHP语法基础
2016/01/01 PHP
PHP重定向与伪静态区别
2017/02/19 PHP
Yii2.0实现生成二维码功能实例
2017/10/24 PHP
关于PHP虚拟主机概念及如何选择稳定的PHP虚拟主机
2018/11/20 PHP
初学prototype,发个JS接受URL参数的代码
2006/09/25 Javascript
一个对于Array的简单扩展
2006/10/03 Javascript
IE6中使用position导致页面变形的解决方案(js代码)
2011/01/09 Javascript
jquery模拟按下回车实现代码
2011/09/20 Javascript
js+css实现导航效果实例
2015/02/10 Javascript
javascript实现dom动态创建省市纵向列表菜单的方法
2015/05/14 Javascript
详解AngularJS如何实现跨域请求
2016/08/22 Javascript
微信小程序微信支付接入开发实例详解
2017/04/12 Javascript
详解vue父子组件间传值(props)
2017/06/29 Javascript
深入理解vue.js中$watch的oldvalue与newValue
2017/08/07 Javascript
基于zTree树形菜单的使用实例
2017/12/25 Javascript
Vue动态获取width的方法
2018/08/22 Javascript
浅谈让你的代码更简短,更整洁,更易读的ES6小技巧
2018/10/25 Javascript
vue-cli3搭建项目的详细步骤
2018/12/05 Javascript
uni-app之APP和小程序微信授权方法
2019/05/09 Javascript
Python之eval()函数危险性浅析
2014/07/03 Python
python将MongoDB里的ObjectId转换为时间戳的方法
2015/03/13 Python
动态规划之矩阵连乘问题Python实现方法
2017/11/27 Python
python编程使用selenium模拟登陆淘宝实例代码
2018/01/25 Python
python 基本数据类型占用内存空间大小的实例
2018/06/12 Python
利用ctypes获取numpy数组的指针方法
2019/02/12 Python
Python脚本修改阿里云的访问控制列表的方法
2019/03/08 Python
python中break、continue 、exit() 、pass终止循环的区别详解
2019/07/08 Python
python+selenium 鼠标事件操作方法
2019/08/24 Python
python实现把两个二维array叠加成三维array示例
2019/11/29 Python
基于python监控程序是否关闭
2020/01/14 Python
Django实现将一个字典传到前端显示出来
2020/04/03 Python
python如何调用字典的key
2020/05/25 Python
python中什么是面向对象
2020/06/11 Python
Html5基于canvas实现电子签名并生成PDF文档
2020/12/07 HTML / CSS
美国在线家装零售商:Build.com
2016/09/02 全球购物