PHP 函数具有作用域和访问权限,决定了变量和函数的可见性。作用域包括局部(仅限函数内)、全局(函数内外)、超全局(任何作用域)。访问权限包括 public(任何地方访问)、protected(仅限类及子类访问)、private(仅限类内访问)。实战中,购物车类的私有变量只限类内访问,而公有方法可从外部调用,体现了作用域和访问权限的应用。
PHP 函数的作用域和访问权限
函数的作用域
函数的作用域决定了变量在代码中可用范围。PHP 中有三种作用域:
变量作用域示例
<?php function myFunction() { $localVariable = "Local"; // 局部变量 echo $localVariable; // 在函数内部可用 } $globalVariable = "Global"; // 全局变量 myFunction(); echo $globalVariable; // 在函数外部可用 ?>
访问权限
函数访问权限控制外部代码对函数的访问。PHP 中有三种访问权限:
访问权限示例
<?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
方法是公有的,可从外部代码访问。以上是PHP 函数的作用域和访问权限的详细内容。更多信息请关注PHP中文网其他相关文章!