PHP 開発の基本チュートリアルの変数

変数は情報を保存するために使用される「コンテナ」です:

以下の例を参照してください

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>php.cn</title>
</head>
<body>
<?php
$x=5;
$y=6;
$z=$x+$y;
echo $z;
?>
</body>
</html>



1. 代数

x=5

y=6

z= × + y

  • 代数では、値(5など)を保持するために文字(xなど)を使用します。

  • 上記の式 z=x+y から、z の値は 11 であると計算できます。

  • PHPでは、これらの3文字を変数と呼びます。

  • 注: 変数はデータを保存するためのコンテナーと考え​​てください。


2. PHP 変数

代数と同じように、PHP 変数は値 (x=5) と式 (z=x+y) を保存するために使用できます。

変数名は短くすることも (x や y など)、より説明的なもの (number、total_volume など) にすることもできます。


3. PHP 変数のルール

  • 変数は $ 記号で始まり、その後に変数名が続きます

  • 変数名は文字またはアンダースコアで始める必要があります

  • 数字で始めてください

  • 変数名には英数字とアンダースコア(A-z、0-9、_)のみを含めることができます

  • 変数名は大文字と小文字が区別されます($yと$Yは2つの異なる変数です)

注: PHP 変数名では大文字と小文字が区別されます。

例:

<?php
//site = 'Hello';     // 非法变量名;以数字开头
$_4site = 'World';    // 合法变量名;以下划线开头
$i小明is = 'haha';  // 合法变量名;可以用中文
?>



4. PHP変数を作成する

PHP 変数を宣言するコマンドはありません。

最初に値を割り当てると、変数が作成されます:

<?php
$txt="Hello world!";
$x=5;
$y=10.5;
?>

上記のステートメントの実行では、変数 txt は値 Hello world! を保持し、変数 x は値 5 を保持します。

注: テキスト値を変数に割り当てるときは、テキスト値を引用符で囲んでください。


5. PHP は緩やかに型付けされた言語です

  • 上の例では、変数のデータ型を PHP に宣言する必要がないことがわかりました。

  • PHP は、変数をその値に基づいて正しいデータ型に自動的に変換します。

  • 厳密に型指定されたプログラミング言語では、使用する前に変数の型と名前を宣言 (定義) する必要があります。


6. PHP 変数のスコープ (初心者には詳細には触れず、一時的に理解することをお勧めします)

変数のスコープは、変数を参照/使用できるスクリプトの部分です。

PHP には 4 つの異なる変数スコープがあります:

  • local

  • global

  • static

  • パラメータ


1. ローカルスコープとグローバルスコープ

at all 外部で定義された変数関数にはグローバルスコープがあります。関数に加えて、スクリプトのどの部分からもグローバル変数にアクセスできます。関数内のグローバル変数にアクセスするには、global キーワードを使用する必要があります。

PHP 関数内で宣言された変数はローカル変数であり、関数内でのみアクセスできます:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>php.cn</title>
</head>
<body>
<?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"; 
?>
</body>
</html>



2.PHP グローバル キーワード

グローバル キーワードは、関数内のグローバル変数にアクセスするために使用されます。

  • 関数の外で定義されたグローバル変数を関数内で呼び出すには、関数内の変数の前に global キーワードを追加する必要があります:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>php.cn</title>
</head>
<body>
<?php
$x=5;
$y=6;
function test(){
	global $x,$y;
	$y=$x+$y;
}
test();
echo $y;
?>
</body>
</html>

注: global を削除すると、その効果を確認できます

  • PHP は、すべてのグローバル変数を $GLOBALS[index] という配列に保存します。インデックスは変数の名前を保持します。この配列は関数内でアクセスすることも、グローバル変数を更新するために直接使用することもできます。

上記の例は次のように書くことができます:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>php.cn</title>
</head>
<body>
<?php
$x=5;
$y=6;
function myTest()
{
$GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y'];
} 
myTest();
myTest();
myTest();
myTest();
echo $y;
?>
</body>
</html>

注: 2 つのメソッドの実際の効果は同じです


3.PHP 静的キーワード

関数が完了すると、そのすべての変数が通常は削除されます。ただし、ローカル変数を削除したくない場合もあります。

これを行うには、最初に変数を宣言するときに static キーワードを使用します:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>php.cn</title>
</head>
<body>
<?php
function myTest()
{
static $x=0;
echo $x;
$x++;
}
myTest();
myTest();
myTest();
?>
</body>
</html>

注: global 内のコンテンツも同様に破棄されますか? ? ?


4. パラメータのスコープ

パラメータは、呼び出しコードを通じて関数に値を渡すローカル変数です。

パラメータは、関数宣言の一部としてパラメータリストで宣言されます:

詳細については、PHP関数の章を参照してください

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>php.cn</title>
</head>
<body>
<?php
function test($x)
{
echo $x;
}
test(2016);
?>
</body>
</html>



7. 変数変数

変数変数本質は、宣言された変数の前に $ 記号を追加することです

最初に $x を設定します

<?php
$x= 'hello';
$$x='xiao ming';
echo "$x ${$x}";
?>

上記のコードは次のように書くこともできます:

<?php
$x= 'hello';
$hello='xiao ming';
echo "$x $hello";
?>

例は同等です

注: 変数変数は配列で使用されるため、あいまいな問題を解決する必要があります。これは、$$a[1] を記述するときに、パーサーは $a[1] を変数として必要とするか、または $$a を変数として必要としてインデックス [1] 値を持つ変数を抽出するかを知る必要があります。この問題を解決する構文は、最初のケースには ${$a[1]} を使用し、2 番目のケースには ${$a}[1] を使用します。

学習体験:

  • 変数の概念の理解、変数は情報の入れ物です

  • 変数の4つのスコープのスコープと違い

学び続ける
||
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php.cn</title> </head> <body> <?php $x=5; $y=6; $z=$x+$y; echo $z; ?> </body> </html>
  • おすすめコース
  • コースウェアのダウンロード
現時点ではコースウェアはダウンロードできません。現在スタッフが整理中です。今後もこのコースにもっと注目してください〜
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!