PHP 変數(shù)
変數(shù)とは何ですか?
変數(shù)とは、プログラムの実行中に値が変化する可能性のある量を指します。変數(shù)は名前(変數(shù)名)で識(shí)別されます。システムはプログラム內(nèi)の変數(shù)ごとに記憶裝置を割り當(dāng)てます。変數(shù)名は基本的にコンピュータのメモリ裝置の名前です。したがって、変數(shù)名を使用してメモリ
內(nèi)のデータにアクセスできます。
変數(shù)は、情報(bào)を保存するために使用される「コンテナ」です:
インスタンス
<?php $x=5; $y=6; $z=$x+$y; echo $z; ?>代數(shù)
x=5
y=6 z=x+y
と同様、私たちは文字 (x など) を入力し、それに値 (5 など) を割り當(dāng)てます。
上記の式 z=x+y から、z の値は 11 であると計(jì)算できます。
PHP では、これらの文字は変數(shù)と呼ばれます。
変數(shù)は、データを保存するために使用されるコンテナです。
PHP変數(shù)代數(shù)と同様に、PHP変數(shù)には特定の値(x=5)または式(z=x+y)を割り當(dāng)てることができます。
変數(shù)には、非常に短い名前 (x や y など) またはよりわかりやすい名前 (年齢、車名、合計(jì)容量など) を使用できます。 php変數(shù)ルール:
$シンボルを使用して使用します。 $var = 'hello'; //正しい
$123var = 'hello'; //正しい$@#var = 'hello';
PHP ステートメントと PHP 変數(shù)では大文字と小文字が區(qū)別されます。
PHP変數(shù)を作成(宣言)する
PHP 変數(shù)を宣言するコマンドはありません。
最初に値を割り當(dāng)てると、変數(shù)が作成されます:
インスタンス
<?php $txt="Hello world!"; $x=5; $y=10.5; ?>
上記のステートメントの実行では、変數(shù) txt は値 Hello world! を保持し、変數(shù) x は値 5 を保持します。
注: テキスト値を変數(shù)に割り當(dāng)てるときは、テキスト値を引用符で囲んでください。
変數(shù)の割り當(dāng)て: 変數(shù)に特定のデータ値を與えることを指します。文字列型および數(shù)値型の変數(shù)の場合、「=」を使用して割り當(dāng)てを行うことができます。
文法: <?php $name=value;?>name は、必要に応じて変數(shù)の名前を選択できますが、関數(shù)または関數(shù)に関連する?yún)g語を使用するのが最善です。役割。
value は変數(shù)に代入される値です。
例:
<?php $color="red"; $_name="jack"; ?>
PHP は弱い型付け言語です
上の例では、変數(shù)のデータ型を PHP に宣言する必要がないことがわかりました。
PHP は、変數(shù)をその値に基づいて正しいデータ型に自動(dòng)的に変換します。
厳密に型指定されたプログラミング言語では、使用する前に変數(shù)の型と名前を宣言 (定義) する必要があります。
PHP 変數(shù)のスコープ
変數(shù)のスコープは、変數(shù)を參照/使用できるスクリプトの部分です。
PHP には 4 つの異なる変數(shù)スコープがあります:
?ローカル スコープとグローバル スコープ
はすべての関數(shù)の外側(cè)で定義されます 変數(shù)にはグローバル スコープがあります。関數(shù)に加えて、スクリプトのどの部分からもグローバル変數(shù)にアクセスできます。関數(shù)內(nèi)のグローバル変數(shù)にアクセスするには、global キーワードを使用する必要があります。 PHP 関數(shù)內(nèi)で宣言された変數(shù)はローカル変數(shù)であり、関數(shù)內(nèi)でのみアクセスできます: Example<?php $x=5; // 全局變量 function myTest() { $y=10; // 局部變量 echo "<p>測試函數(shù)內(nèi)變量:<p>"; echo "變量 x 為: $x"; echo "<br>"; echo "變量 y 為: $y"; } myTest(); echo "<p>測試函數(shù)外變量:<p>"; echo "變量 x 為: $x"; echo "<br>"; echo "變量 y 為: $y"; ?>
myTest() 関數(shù)を呼び出して 2 つの変數(shù)の値を出力すると、関數(shù)はローカル変數(shù) $y の値を出力しますが、$x 変數(shù)は次のとおりであるため、$x の値を出力できません。関數(shù)の外で定義されており、関數(shù)內(nèi)で使用することはできません。関數(shù)內(nèi)のグローバル変數(shù)にアクセスしたい場合は、 global キーワードを使用する必要があります。
次に、myTest() 関數(shù)の外側(cè)に 2 つの変數(shù)の値を出力します。この関數(shù)はすべてのローカル変數(shù) $x の値を出力しますが、$y 変數(shù)はで定義されているため、$y の値を出力できません。関數(shù)であり、ローカル変數(shù)です。 これらの関數(shù)で定義された変數(shù)名はローカル変數(shù)であり、その関數(shù)內(nèi)でのみ機(jī)能するため、異なる関數(shù)で同じ変數(shù)名を使用できます。グローバル キーワードは、関數(shù)內(nèi)のグローバル変數(shù)にアクセスするために使用されます。
関數(shù)の外で定義されたグローバル変數(shù)を関數(shù)內(nèi)で呼び出すには、関數(shù)內(nèi)の変數(shù)の前に global キーワードを追加する必要があります:
例
<?php $x=5; $y=10; function myTest() { global $x,$y; $y=$x+$y; } myTest(); echo $y; // 輸出 15 ?>
PHP は、すべてのグローバル変數(shù)を $GLOBALS[index] middle という名前の配列に格納します。インデックスは変數(shù)の名前を保持します。この配列は関數(shù)內(nèi)でアクセスすることも、グローバル変數(shù)を更新するために直接使用することもできます。
上記の例は次のように記述できます:
例 <?php
$x=5;
$y=10;
function myTest()
{
$GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y'];
}
myTest();
echo $y;
?>
靜的スコープ
関數(shù)が完了すると、通常、その変數(shù)はすべて削除されます。ただし、ローカル変數(shù)を削除したくない場合もあります。 これを行うには、初めて変數(shù)を宣言するときに static キーワードを使用します: 例<?php function myTest() { static $x=0; echo $x; $x++; } myTest(); myTest(); myTest(); ?>
すると、関數(shù)が呼び出されるたびに、変數(shù)には前回関數(shù)が呼び出されたときの値が保持されます。
注: この変數(shù)は依然として関數(shù)のローカル変數(shù)です。
変數(shù)
変數(shù)は、変數(shù)名を動(dòng)的に変更できるユニークなタイプの変數(shù)です。動(dòng)作原理は、変數(shù)の名前が別の変數(shù)の値によって決定されることです。実裝プロセスでは、変數(shù)の前に追加の「$」を追加します。
パラメータのスコープ
パラメータは、呼び出しコードを通じて関數(shù)に値が渡されるローカル変數(shù)です。
パラメータは、関數(shù)宣言の一部としてパラメータ リストで宣言されます:
例
<?php function myTest($x) { echo $x; } myTest(5); ?>
これについては、PHP 関數(shù)の章で詳しく説明します。
システム変數(shù)
PHP システムに組み込まれている変數(shù)のほとんどはアンダースコアで始まります。その具體的な使い方については後のコースで紹介します
? $GLOBALS はすべてのグローバル変數(shù)を現(xiàn)在のディレクトリに保存します。スクリプトとそのKEY は変數(shù)名、VALUE は変數(shù)の値
?ユーザーのブラウザの Cookie に保存されている変數(shù)配列を設(shè)定します
? $ _files storage は現(xiàn)在のスクリプト データにファイルをアップロードします ? $ _env storage 現(xiàn)在の Web 環(huán)境変數(shù) $_GET 內(nèi)のすべて、$_POST、$_COOKIE、$_SESSION
$_SESSION 現(xiàn)在のスクリプトのセッション変數(shù)の配列を保存します