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など)(年齢、carname、totalvolumeなど)を、短い名前にすることができます。
PHP変数のルール:
- 変数は、変数名が続き、$記号で始まります
- 変数名は文字またはアンダースコア文字で始まる必要があります
- 変数名には英数字のみとアンダースコア(AZ、0-9、および_)を含むことができます
- 変数名にはスペースを含めることはできません
- 変数名は大文字と小文字を区別($ yと$ Yは、2つの異なる変数である)であります
PHP PHP文と変数は大文字と小文字が区別されます。 |
(ステートメント)PHP変数を作成します。
PHPは、変数宣言を命令しません。
変数は、あなたがそれに割り当てるときに初めて作成されます。
上記の文が実行されるには、変数のtxtは世界ハロー値を保持します!そして、変数xが値5を保持します。
注:変数にテキスト値を割り当てると、テキスト値を引用符で囲みます。
PHPは弱く型付けされた言語であります
上記の例では、我々はあなたがPHPの変数のデータ型を宣言する必要はありません、注意してください。
PHPは、変数の値に基づいてされ、変数は自動的に正しいデータ型に変換されます。
強く型付けされたプログラミング言語では、まず変数を使用する前に、タイプと名前(定義された)変数を宣言する必要があります。
PHPの変数のスコープ
変数のスコープは、スクリプト変数を参照することができます/使用される部品です。
四つの異なるPHPの変数のスコープがあります。
- ローカル
- グローバル
- 静的
- パラメーター
ローカルおよびグローバルスコープ
関数の外で定義されているすべての変数ではグローバルスコープを持っています。 機能に加えて、グローバル変数は、関数のグローバル変数にアクセスするために、スクリプトの任意の部分によってアクセス可能な、グローバルキーワードを使用する必要があります。
関数内で宣言されたPHP変数は、ローカル変数は、関数の内部でのみアクセスすることができますされています。
例
$ X = 5; // グローバル変数
機能 MYTEST()
{
$ yを = 10; // ローカル変数
エコー "<P> テスト機能変数内:<P>";
;: "$ xに変数 xがある 」 エコー
「<BR> " エコー ;
;: "$ yを変数 y は " エコー
}
MYTEST();
"<P> テスト機能外部変数:<P>" エコー ;
;: "$ xに変数 xがある 」 エコー
「<BR> " エコー ;
;: "$ yを変数 y は " エコー
?>
実行中のインスタンス»
上記の例ではMYTEST()関数は、変数$ xと$ yを定義します。 関数宣言の外側の$ X変数なので、それがローカル変数である関数の内部で宣言されたグローバル変数、$ yを変数です。
私たちは二つの変数のMYTEST()関数と出力値を呼び出すと、関数外で定義された変数$ xは、関数内で使用することができないので、機能意志の出力は、$ yの値は、$ xの出力値ローカル変数ではなく、場合関数内でグローバル変数にアクセスするには、グローバルなキーワードを使用する必要があります。
その後、我々MYTEST()関数は、2つの変数、ローカル変数$ xの関数が出力されます完全な値の出力値の外にあるが、yができない$、の出力値は、関数内で定義された$ yを変数は、ローカル変数であるため。
あなたが定義された変数名内のこれらの機能はローカル変数であるため、関数内でのみ機能し、異なる機能に同じ変数名を使用することができます。 |
PHP globalキーワード
globalキーワードは、関数内でグローバル変数にアクセスするために使用されます。
関数内で関数の外で定義されたグローバル変数を呼び出して、我々は関数変数を加えたグローバルキーワードの前に必要です。
例
$ X = 5;
$ Y = 10;
機能MYTEST()
{
グローバル$ xに、$ yを。
$ Y = $ X + $ yを。
}
MYTEST();
$ yをエコー; //出力15
?>
実行中のインスタンス»
PHPは、すべてのグローバル変数は$ GLOBALSの[インデックス]という配列に格納されています。 名前のインデックス変数を保存します。 この配列は、関数内でアクセスすることができ、直接グローバル変数を更新するために使用することができます。
上記の例は次のように書くことができます。
例
$x=5;
$y=10;
function myTest()
{
$GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y'];
}
myTest();
echo $y;
?>
実行中のインスタンス»
静的スコープ
機能が完了すると、通常はすべての変数が削除されています。 しかし、時にはあなたは、ローカル変数は削除されませんします。
あなたが最初の変数を宣言するときにこれを行うには、staticキーワードを使用します。
例
function myTest()
{
static $x=0;
echo $x;
$x++;
}
myTest();
myTest();
myTest();
?>
実行中のインスタンス»
関数が呼び出される前に続いて、関数が呼び出されるたびに、変数の値を保持します。
注:この変数は、まだ関数のローカル変数です。
パラメータスコープ
パラメータは、呼び出し元のコードの意志関数のローカル変数に値によって渡されます。
パラメータは、関数宣言の一部として、パラメータリストで宣言されています。
例
function myTest($x)
{
echo $x;
}
myTest(5);
?>
我々はよ、PHPの関数セクションには、それより詳細な議論しました。