PHP 変数
変数は情報を格納するための「コンテナ」です:
代数と同様に
x=5
y=6
z=x+y
代数では、文字(x など)を使用し、それに値(5 など)を代入します。
上記の式 z=x+y から、z の値が 11 であると計算できます。
PHP では、これらの文字は変数。
| 変数はデータを格納するためのコンテナです。 |
PHP 変数
代数と同様に、PHP 変数には値(x=5)または式(z=x+y)を代入できます。
変数名は非常に短い名前(x や y など)も、より説明的な名前(age、carname、totalvolume など)も使用できます。
PHP 変数の規則:
- 変数は $ 記号で始まり、その後に変数名が続きます
- 変数名は英文字またはアンダースコア文字で始まる必要があります
- 変数名は英文字、数字、およびアンダースコア(A-z、0-9 および _ )のみを含めることができます
- 変数名にスペースを含めることはできません
- 変数名は大文字と小文字を区別します($y と $Y は別の変数です)
| PHP の文と PHP 変数はどちらも大文字と小文字を区別します。 |
PHP 変数の作成(宣言)
PHP には変数を宣言するコマンドはありません。
変数は、最初に値を代入したときに作成されます:
上記の文の実行中、変数txtは値を保存しますHello world!、かつ変数xは値を保存します5。
注:変数にテキスト値を代入するときは、テキスト値を引用符で囲んでください。
PHP は弱い型付けの言語です
上記のサンプルでは、PHP にその変数のデータ型を宣言する必要がないことに気付きます。
PHP は変数の値に基づいて、変数を自動的に正しいデータ型に変換します。
強い型付けのプログラミング言語では、変数を使用する前に、変数の型と名前を宣言(定義)する必要があります。
PHP 変数のスコープ
変数のスコープとは、スクリプト内で変数が参照・使用できる部分のことです。
PHP には4つの異なる変数スコープがあります:
- local
- global
- static
- parameter
ローカルスコープとグローバルスコープ
すべての関数の外部で定義された変数は、グローバルスコープを持ちます。関数内を除いて、グローバル変数はスクリプトのどの部分からでもアクセスできます。関数内でグローバル変数にアクセスするには、global キーワードを使用する必要があります。
PHP 関数の内部で宣言された変数はローカル変数であり、関数の内部でのみアクセスできます:
サンプル
$x=5; // グローバル変数
function myTest()
{
$y=10; // ローカル変数
echo "<p>関数内の変数をテスト:<p>";
echo "変数 x は: "$x";
echo "<br>";
echo "変数 y は: "$y";
}
myTest();
echo "<p>関数外の変数をテスト:<p>";
echo "変数 x は: "$x";
echo "<br>";
echo "変数 y は: "$y";
?>
上記の例では、myTest() 関数は $x と $y 変数を定義しています。 $x 変数は関数の外で宣言されているため、グローバル変数です。 $y 変数は関数内で宣言されているため、ローカル変数です。
myTest() 関数を呼び出して2つの変数の値を出力すると、関数はローカル変数 $y の値を出力しますが、$x の値は出力できません。$x 変数は関数の外で定義されているため、関数内で使用できないからです。関数内でグローバル変数にアクセスするには、global キーワードを使用する必要があります。
次に、myTest() 関数の外で2つの変数の値を出力すると、関数はグローバル変数 $x の値を出力しますが、$y の値は出力できません。$y 変数は関数内で定義されており、ローカル変数であるためです。
![]() |
異なる関数内で同じ変数名を使用できます。これらの関数内で定義された変数名はローカル変数であり、その関数内でのみ有効だからです。 |
|---|
PHP の global キーワード
global キーワードは、関数内でグローバル変数にアクセスするために使用します。
関数内で関数外に定義されたグローバル変数にアクセスするには、関数内の変数の前に global キーワードを付ける必要があります:
サンプル
サンプルを実行 »
PHP はすべてのグローバル変数を $GLOBALS[index] という名前の配列に格納します。index変数。変数の名前を保存します。この配列は関数の内部からアクセスでき、グローバル変数を直接更新するためにも使用できます。
上記の例は次のように書くこともできます:
サンプル
サンプルを実行 »
Static スコープ
関数の実行が完了すると、そのすべての変数は通常削除されます。ただし、ローカル変数を削除したくない場合もあります。
これを行うには、変数を最初に宣言するときにstaticキーワードを使用します:
サンプル
サンプルを実行 »
その後、関数を呼び出すたびに、その変数は前回関数が呼び出されたときの値を保持します。
注:この変数は依然として関数のローカル変数です。
パラメータのスコープ
パラメータ(引数)は、呼び出し元のコードから関数に値を渡すためのローカル変数です。
パラメータは、関数宣言の一部としてパラメータリスト内で宣言されます:
サンプル
これについては「PHP 関数」の章で詳しく説明します。
その他の拡張