変数

メモ:  Category:php

変数は、$ではじめ以下のルールを守れば好きな名前をつけることができます。

  • 変数は、$で始める
  • 変数名に使える文字は、英数字、アンダースコア
  • 変数名の最初に数字は使えない
  • 大文字と小文字は区別される

php では、変数の宣言や明示的に型を指定する必要がありません。

変数には、スコープという有効範囲があり、関数内にあるものをローカル変数と呼び、どの関数にも含まれない変数をグローバル変数と呼びます。ローカル変数とグローバル変数は、同じ名前であってもまったく別のものとして扱われます。

例えば、

<?php
$i=1;
print calc();
function calc(){
    return ($i+1);
}
?>

このスクリプトの結果は、1 が表示されます。これは、関数内の$iと関数外の$i を別のものと考えているからです。

では、2 という結果を返すにはどうすればいいのでしょう。

<?php
$i=1;
print calc();
function calc(){
    global $i;
    return ($i+1);
}
?>

global $iと関数内で宣言することで$i はグローバル変数だと明示的に表します。このように、 global と宣言することで関数内でグローバル変数の値を使用することができます。

可変変数

php には、可変変数という変数名を動的に設定できる変数があります。可変変数の記述は、変数の前に$つけるか${$i}と記述します。

使用方法:

<?php
$a = "name";
$name = "Hello World!";
print $$a;
?>

bluenote by BBB