函数调用的作用域和可见性:作用域:定义函数可访问变量的范围(本地/全局)。可见性:定义函数可被其他函数访问的范围(public/protected/private)。作用域在函数调用时生效,确定可访问的变量。实战案例:以 user 类为例,演示属性和方法的可见性限制。

PHP OOP 中函数调用的作用域和可见性
作用域
函数的作用域定义了该函数可访问变量的范围内。在 PHP 中有两种作用域:
立即学习“PHP免费学习笔记(深入)”;
可见性
函数的可见性定义了函数可以被其他函数访问的范围。在 PHP 中有三个可见性级别:
函数调用的作用域
启科网络商城系统由启科网络技术开发团队完全自主开发,使用国内最流行高效的PHP程序语言,并用小巧的MySql作为数据库服务器,并且使用Smarty引擎来分离网站程序与前端设计代码,让建立的网站可以自由制作个性化的页面。 系统使用标签作为数据调用格式,网站前台开发人员只要简单学习系统标签功能和使用方法,将标签设置在制作的HTML模板中进行对网站数据、内容、信息等的调用,即可建设出美观、个性的网站。
0
当函数被调用时,作用域的作用是确定可以访问哪些变量。变量只能访问在其作用域内的变量。
以下示例展示了作用域如何影响变量的访问:
<?php
$global_variable = "全球变量";
function myFunction() {
$local_variable = "局部变量";
echo "局部变量:$local_variable<br>";
echo "全局变量:$global_variable<br>";
}
myFunction();
?>输出:
局部变量:局部变量 全局变量:全球变量
实战案例
考虑一个用于处理用户信息的类:
<?php
class User {
public $name;
protected $email;
private $password;
public function __construct($name, $email, $password) {
$this->name = $name;
$this->email = $email;
$this->password = $password;
}
public function getName() {
return $this->name;
}
protected function getEmail() {
return $this->email;
}
private function getPassword() {
return $this->password;
}
}
$user = new User("约翰·史密斯", "john.smith@example.com", "12345");
echo $user->getName(); // 约翰·史密斯
echo $user->getEmail(); // 错误:无法访问受保护属性
echo $user->getPassword(); // 错误:无法访问私有属性
?>在这个示例中:
$name 是一个公共属性,可以在任何地方访问。$email 是一个受保护属性,只能在类とその子类中访问。$password 是一个私有属性,只能在类中访问。getName() 是一个公共方法,可以在任何地方调用。getEmail() 是一个受保护方法,只能在类とその子类中调用。getPassword() 是一个私有方法,只能在类中调用。
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号