php 函数具有作用域和访问权限,决定了变量和函数的可见性。作用域包括局部(仅限函数内)、全局(函数内外)、超全局(任何作用域)。访问权限包括 public(任何地方访问)、protected(仅限类及子类访问)、private(仅限类内访问)。实战中,购物车类的私有变量只限类内访问,而公有方法可从外部调用,体现了作用域和访问权限的应用。
PHP 函数的作用域和访问权限
函数的作用域
函数的作用域决定了变量在代码中可用范围。PHP 中有三种作用域:
- 局部变量:仅在函数内部可用。
- 全局变量:在函数内部和外部均可用。
- 超全局变量:在任何作用域中均可用。
变量作用域示例
<?php function myFunction() { $localVariable = "Local"; // 局部变量 echo $localVariable; // 在函数内部可用 } $globalVariable = "Global"; // 全局变量 myFunction(); echo $globalVariable; // 在函数外部可用 ?>
访问权限
函数访问权限控制外部代码对函数的访问。PHP 中有三种访问权限:
- public:可在任何地方访问。
- protected:仅可在类及其子类中访问。
- private:仅可在类内部访问。
访问权限示例
<?php class MyClass { public function publicMethod() { // 可从任何地方访问 } protected function protectedMethod() { // 可从类及其子类中访问 } private function privateMethod() { // 仅可从类内部访问 } } $myClass = new MyClass(); $myClass->publicMethod(); // 可访问 $myClass->protectedMethod(); // 可访问(类外部子类中) $myClass->privateMethod(); // 错误,不可访问 ?>
实战案例
建立一个简单的购物车类,展示作用域和访问权限。
<?php class Cart { private $items = []; public function addItem($item) { $this->items[] = $item; // 局部变量 $item 可在此处访问 } public function getItems() { return $this->items; // 局部变量 $items 可在此处访问 } } $cart = new Cart(); $cart->addItem("苹果"); $cart->addItem("香蕉"); print_r($cart->getItems()); // 输出购物车中的物品 ?>
本例中:
- $items 变量在 Cart 类中是私有的,只可在类内部访问。
- addItem 和 getItems 方法是公有的,可从外部代码访问。
想要了解更多内容,请持续关注码农资源网,一起探索发现编程世界的无限可能!
本站部分资源来源于网络,仅限用于学习和研究目的,请勿用于其他用途。
如有侵权请发送邮件至1943759704@qq.com删除
码农资源网 » PHP 函数的作用域和访问权限
本站部分资源来源于网络,仅限用于学习和研究目的,请勿用于其他用途。
如有侵权请发送邮件至1943759704@qq.com删除
码农资源网 » PHP 函数的作用域和访问权限