>  기사  >  백엔드 개발  >  PHP 함수 범위 및 가시성

PHP 함수 범위 및 가시성

王林
王林원래의
2024-04-14 09:06:01790검색

PHP 함수 변수 범위는 로컬(함수 내부에서만)과 전역(함수 내부 및 외부에서 접근 가능)으로 구분됩니다. 가시성 수준(공개, 보호, 비공개)에 따라 함수에 대한 메서드 및 속성의 가시성이 결정되어 캡슐화 및 코드 구성이 보장됩니다.

PHP 函数的范围和可见性

PHP 함수의 범위 및 가시성

Scope

함수의 범위는 변수가 함수 내부 또는 외부에서 사용될 수 있는 범위를 나타냅니다. PHP 함수의 변수는 지역 변수 또는 전역 변수입니다.

로컬 변수

로컬 변수는 함수 내에서 선언되고 사용되며 함수 외부에서는 액세스할 수 없습니다. 지역 변수를 선언하려면 $ 표기법을 사용하세요. $ 符号声明局部变量。

function myFunction() {
  $x = 5; // 局部变量
  echo $x; // 输出 5
}

// 尝试在函数外访问局部变量会报错
echo $x; // 报错: 未定义变量

全局变量

全局变量在函数外声明和使用,在函数内也可以访问。使用 global 关键字声明全局变量。

$y = 10; // 全局变量

function myFunction() {
  global $y; // 声明全局变量
  echo $y; // 输出 10
}

myFunction(); // 调用函数

可见性

可见性决定了类中的方法和属性对函数的可见性。PHP 中有三个可见性级别:

  • public: 对所有对象和函数可见
  • protected: 对派生类和父类可见
  • private: 仅对声明它们的类可见

实战案例

考虑一个包含 Customer

class Customer {
  private $name; // 私有属性
  public function getName() { // 公共方法
    return $this->name;
  }
}

// 在函数中访问私有属性 (报错)
function myFunction() {
  $customer = new Customer();
  echo $customer->name; // 报错: 无法访问私有属性
}

// 在函数中访问公共方法
function myOtherFunction() {
  $customer = new Customer();
  echo $customer->getName(); // 输出客户姓名
}

전역 변수

전역 변수는 함수 외부에서 선언되고 사용되며 함수 내에서도 액세스할 수 있습니다. 전역 변수를 선언하려면 global 키워드를 사용하세요.

rrreee

🎜Visibility🎜🎜🎜가시성은 함수에 대한 클래스의 메서드 및 속성의 가시성을 결정합니다. PHP에는 세 가지 가시성 수준이 있습니다. 🎜
  • 🎜public: 🎜 모든 객체와 함수에 표시
  • 🎜protected: 🎜 파생 클래스와 상위 클래스에 표시
  • 🎜 private: 🎜 선언된 클래스에만 표시됩니다.
🎜🎜 실제 예 🎜🎜🎜 Customer 클래스가 포함된 프로그램을 고려해보세요. 🎜rrreee🎜🎜결론🎜🎜 🎜함수 범위와 가시성은 코드를 구성하고 변수와 메서드에 대한 액세스를 제어하는 ​​데 중요합니다. 이러한 개념을 이해하는 것은 유지 관리 가능하고 명확한 PHP 애플리케이션을 작성하는 데 중요합니다. 🎜

위 내용은 PHP 함수 범위 및 가시성의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.