1stPHP

変数の定義時に型の定義を必要としません。 型は変数が使用される文の内容に応じてPHPにより実行時に決定されます。

例えば、ある変数に整数を代入すれば、その変数は整数型になり、文字列を代入すれば、文字列型になります。

論理型(boolean)

TRUE(真)またはFALSE(偽)のどちらかになります(大文字小文字に依存しません)。

<?php
$flag1
= true;  // 値TRUEを$flag1に代入する
$flag2 = false; // 値FALSEを$flag2に代入する
?>

次の値はFALSEとみなされます。

整数

10進数、8進数(数の前に0を付ける)、16進数(数の前に 0xを付ける) で指定可能です。符号(-または+)を前に付けることができます。

<?php
$var
= 1234; // 10進整数
$var = -123; // 負の数
$var = 0123; // 8進数
$var = 0x1A; // 16進数
?>

浮動小数点数

浮動小数点数は次のように指定できます。

<?php
$var
= 1.234;
$var = 1.2e3;
$var = 1E-23;
?>

文字列

文字列は、引用符、二重引用符、ヒアドキュメントの方法で指定することができます。

引用符(シングルクオート)

<?php
$str
= '引用符';
?>

変数と特殊文字のエスケープシーケンスは展開されません。

二重引用符(ダブルクオート)

<?php
$str
= "二重引用符";
?>

変数と特殊文字のエスケープシーケンスは展開します。

ヒアドキュメント(<<<)

<?php
$document
= <<<EOD
ヒアドキュメント構文は
このように指定します。
EOD;
?>

変数と特殊文字のエスケープシーケンスは展開します。

エスケープされた文字

記述意味
\nラインフィード(LF)
\rキャリッジリターン(CR)
\tタブ
\\\記号
\$ドル記号
\"ニ重引用符

配列

array()

配列はarray()で作成でき、カンマで区切られた" キー => 値 "の組を引数とします。
各要素は、配列変数[キー] として参照できます。

<?php
// この2つの配列は同じです
$ary1 = array("red","blue","yellow");
$ary2 = array(0=>"red",1=>"blue",2=>"yellow");

//$ary1
//最初の"red"はキーが省略されているので"red"のキーが0(最大値が0になる)
//次の"blue"はキーが省略されているので、"blue"のキーは最大値+1で1(最大値が1になる)
//次の"yellow"はキーが省略されているので、"yellow"のキーは最大値+1で2(最大値が2になる)
print $ary1[1]; // blue を表示

$ary1[1] = "black";
//既に値が割り当てられているキーを指定したので値は上書きされます。
print $ary1[1]; // black を表示

$ary1[] = "green";
//キーを省略して代入したのでキーは最大値+1で3になり、$ary1に追加されます。
print $ary1[3]; // green を表示
?>
<?php
// この2つの配列は同じです
$ary3 = array("red",5=>"blue","yellow");
$ary4 = array(0=>"red",5=>"blue",6=>"yellow");

//$ary3
//最初の"red"はキーが省略されているので"red"のキーが0(最大値が0になる)
//次の"blue"はキーが指定されているので"blue"のキーは5(最大値が5になる)
//次の"yellow"はキーが省略されているので、"yellow"のキーは最大値+1で6(最大値が6になる)
print $ary3[5]; // blue を表示

$ary3[] = "green";
//キーを省略して代入したのでキーは最大値+1で7になり、$ary3に追加されます。
print $ary3[7]; // green を表示
?>
<?php
//キーを文字列にして連想配列
$ary5 = array("red"=>"赤","blue"=>"青","yellow"=>"黄");

print
$ary5["red"]; // 赤 を表示

$ary5[] = "白";
//キーを省略して代入。$ary5には整数添字が無いのでキーは0になり、$ary5に追加されます。
print $ary5[0];  // 白 を表示
?>