ホームページ  >  記事  >  バックエンド開発  >  PHP 関数のスコープと可視性

PHP 関数のスコープと可視性

王林
王林オリジナル
2024-04-14 09:06:01790ブラウズ

PHP 関数の変数スコープは、ローカル (関数内のみ) とグローバル (関数内外でアクセス可能) に分かれています。可視性レベル (パブリック、プロテクト、プライベート) によって関数に対するメソッドとプロパティの可視性が決まり、カプセル化とコード構成が保証されます。

PHP 函数的范围和可见性

PHP 関数のスコープと可視性

スコープ

関数のスコープ変数が関数内または関数外で使用できる範囲を指します。 PHP 関数の変数は、ローカル変数またはグローバル変数のいずれかです。

ローカル変数

ローカル変数は関数内で宣言および使用され、関数の外部からはアクセスできません。ローカル変数を宣言するには、$ 表記を使用します。

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

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

グローバル変数

グローバル変数は関数の外部で宣言および使用され、関数内でアクセスすることもできます。 global キーワードを使用してグローバル変数を宣言します。

$y = 10; // 全局变量

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

myFunction(); // 调用函数

可視性

可視性は、関数に対するクラス内のメソッドとプロパティの可視性を決定します。 PHP には 3 つの可視性レベルがあります。

  • 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(); // 输出客户姓名
}

結論

関数のスコープと可視性は、コードを整理し、関数へのアクセスを制御するために重要です。変数とメソッド。これらの概念を理解することは、保守可能で明確な PHP アプリケーションを作成するために重要です。

以上がPHP 関数のスコープと可視性の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。