PHP中的访问修饰符简单比较


Posted in PHP onFebruary 02, 2019

PHP public访问修饰符

示例:

<?php 
header("content-type:text/html;charset=utf-8"); 
// BaseClass 
class pub { 
 public $tag_line = "三水点靠木!"; 
 function display() { 
  echo $this->tag_line."<br/>"; 
 } 
} 
 
// 子类
class child extends pub { 
 function show(){ 
  echo $this->tag_line; 
 } 
} 
 
// 对象声明
$obj= new child; 
 
// 输出
echo $obj->tag_line."<br/>"; 
 
$obj->display(); 
 
$obj->show(); 
?>

输出:

三水点靠木!

三水点靠木!

三水点靠木!

private访问修饰符

private修饰符可在其定义的类及其父类或继承类中使用。如果一个类成员声明为protected,则只能在类本身内以及继承和父类中访问它。

示例:

<?php 
header("content-type:text/html;charset=utf-8"); 
// 基类
class pro { 
 protected $x = 500; 
 protected $y = 500; 
    
 // 实现减法 
 function sub() 
 { 
  echo $sum=$this->x-$this->y . "<br/>"; 
 }  
} 
 
// 子类-继承类
class child extends pro { 
 function mul() //实现乘法
 { 
  echo $sub=$this->x*$this->y; 
 } 
} 
 
$obj= new child; 
$obj->sub(); 
$obj->mul(); 
?>

输出:

0

250000

protected访问修饰符

protected修饰符可在定义它的类中使用,注:它不能在类外部访问意味着继承类。

如果类成员声明为private,则它只能由定义该成员的类访问。

示例:

<?php 
header("content-type:text/html;charset=utf-8"); 
// 基类
class demo { 
 private $name="三水点靠木!"; 
  
 private function show() 
 { 
  echo "这是基类的私有方法"; 
 } 
} 
 
// 子类
class child extends demo { 
 function display() 
 { 
  echo $this->name; 
 } 
} 
 
// 对象声明
$obj= new child; 
 
// 出现异常---未捕获错误:调用私有方法demo::show()
//$obj->show(); 
 
//出现异常--未定义的属性:子级::$name
$obj->display(); 
?>

输出

PHP中的访问修饰符简单比较

从上例可以看出,它将显示错误,因为无法在类外访问私有类数据。

PHP 相关文章推荐
模拟flock实现文件锁定
Feb 14 PHP
一些使用频率比较高的php函数
Oct 03 PHP
PHP关联数组的10个操作技巧
Jan 21 PHP
php中url传递中文字符,特殊危险字符的解决方法
Aug 17 PHP
smarty中英文多编码字符截取乱码问题解决方法
Oct 28 PHP
PHP中使用数组指针函数操作数组示例
Nov 19 PHP
学习php设计模式 php实现桥梁模式(bridge)
Dec 07 PHP
PHP信号量基本用法实例详解
Feb 12 PHP
thinkPHP多语言切换设置方法详解
Nov 11 PHP
thinkphp3.2实现跨控制器调用其他模块的方法
Mar 14 PHP
Laravel框架使用技巧之使用url()全局函数返回前一个页面的地址方法详解
Apr 06 PHP
PHP如何通过date() 函数格式化显示时间
Nov 13 PHP
PHP PDOStatement::setAttribute讲解
Feb 01 #PHP
PHP PDOStatement::rowCount讲解
Feb 01 #PHP
PHP PDOStatement::nextRowset讲解
Feb 01 #PHP
PHP PDOStatement::getColumnMeta讲解
Feb 01 #PHP
PHP PDOStatement::getAttribute讲解
Feb 01 #PHP
PHP PDOStatement::fetchObject讲解
Feb 01 #PHP
Laravel框架搜索分页功能示例
Feb 01 #PHP
You might like
使用ThinkPHP自带的Http类下载远程图片到本地的实现代码
2011/08/02 PHP
php面向对象 字段的声明与使用
2012/06/14 PHP
ThinkPHP应用模式扩展详解
2014/07/16 PHP
yii2缓存Caching基本用法示例
2016/07/18 PHP
Thinkphp5.0 框架视图view的比较标签用法分析
2019/10/12 PHP
php多进程并发编程防止出现僵尸进程的方法分析
2020/02/28 PHP
jQuery.get、jQuery.getJSON、jQuery.post无法返回JSON问题的解决方法
2011/07/28 Javascript
jQuery在IE下使用未闭合的xml代码创建元素时的Bug介绍
2012/01/10 Javascript
nodejs中简单实现Javascript Promise机制的实例
2014/12/06 NodeJs
JavaScript判断对象是否为数组
2015/12/22 Javascript
深入理解jQuery之防止冒泡事件
2016/05/24 Javascript
完美解决IE不支持Data.parse()的问题
2016/11/24 Javascript
解决vue中修改export default中脚本报一大堆错的问题
2018/08/27 Javascript
Vuejs监听vuex中值的变化的方法示例
2018/12/02 Javascript
通过实例解析vuejs如何实现调试代码
2020/07/16 Javascript
vue treeselect获取当前选中项的label实例
2020/08/31 Javascript
详细讲解用Python发送SMTP邮件的教程
2015/04/29 Python
Caffe均值文件mean.binaryproto转mean.npy的方法
2018/07/09 Python
如何利用Boost.Python实现Python C/C++混合编程详解
2018/11/08 Python
解决pip install xxx报错SyntaxError: invalid syntax的问题
2018/11/30 Python
Python常用的json标准库
2019/02/19 Python
python设计tcp数据包协议类的例子
2019/07/23 Python
Python产生一个数值范围内的不重复的随机数的实现方法
2019/08/21 Python
python GUI库图形界面开发之PyQt5不规则窗口实现与显示GIF动画的详细方法与实例
2020/03/09 Python
Python Selenium库的基本使用教程
2021/01/04 Python
CSS3使用多列制作瀑布流
2016/05/10 HTML / CSS
html5实现输入框fixed定位在屏幕最底部兼容性
2020/07/03 HTML / CSS
英国创新设计文具、卡片和礼品包装网站:Paperchase
2018/07/14 全球购物
美国豪华的多品牌精品店:The Webster
2019/07/31 全球购物
奥地利手表、香水、化妆品和珠宝购物网站:Brasty.at
2021/01/17 全球购物
环保公益广告语
2014/03/13 职场文书
建筑院校毕业生求职信
2014/06/13 职场文书
同事打架检讨书
2015/05/06 职场文书
如何写辞职信
2015/05/13 职场文书
2015年秋季运动会前导词
2015/07/20 职场文书
2016年大学生暑假爱心支教活动策划书
2015/11/26 职场文书