关于PHP的作用域

关于范围的问题

在某个地方定义的变量和函数能够使用的范围被称为作用域。在PHP中,存在全局变量和局部变量两种类型的变量。

本地变量

局部变量是一种只能在确定的范围内使用的变量。例如,如果变量在函数中定义,则只能在该函数内使用。

<?php
  $hoge = 1;
  function fuga() 
  {
    echo $hoge;
  }
  fuga();

 //エラーになる。$hogeは関数の中で定義されているので、関数の外では使えない。
?>

全局变量

全球变量是指在函数外部也可以使用的变量,与局部变量不同。要使之前的局部变量可以在外部使用,可以这样做。

<?php
  $hoge = 1;
  function fuga()
  {
    global $hoge;
    echo $hoge;
  }

  fuga();
  //結果1と表示される

只需添加$global,就可以在函数外部使用。
但是,在函数的另一个函数内部是不能使用的。它仅在全局范围内可用。

<?php
 //グローバル範囲

 function fuga()
 {
   //ローカル範囲
 }

 //グローバル範囲

 function hoge()
 {
  //ローカル範囲
 }

 //グローバル範囲
?>

这次总结了关于全局变量和局部变量的内容。还有一些静态变量等需要学习。

广告
将在 10 秒后关闭
bannerAds