例 $a, $a1, $Mozart, $W_A_Mozartスカラー変数にはスカラー値を代入することができます。
例 $a = 1; $a = 1.00; $a = 'Magic Flute';スカラー値は代入時stringとして扱われます。演算時に数値あるいは文字列として解釈されます。
例 $a = 1; $b = 2; $c = $a + $b; $d = $a . $b;$cのは3になりますが、$dは12になります。ここで'+'は数値の和、'.'は文字 列の結合を行なう演算子です。
例 $a = 'Flute'; $b = "Magic $a";この場合、$bは'Magic Flute'になります。変数の直後にも時が続くときは{}で括ります。
例 $a = 'K'; $b = "Magic Flute ${a}621";この場合$bは'Magic Flute K621'になります。文字列中にグラフオブジェクトがあっても変数展開されません。以下の例を参考にして下さい。
例 $b = "$graph->mag";この場合、$bはあくまで'$graph->mag'です。
例 $a = $graph->mag; $b = "$a";上記のように一度スカラー変数に代入すれば、変数展開が可能になります。
例 $a = `pwd`;カレントディレクトリが/usr/local/lib/topazである場合、$aは'/usr/local/lib/topaz'になります。
例 @array = (0, 1, 2);この例では、配列変数@aの第0、1、2番目の要素にそれぞれ0、1、2が格納されます。配列中のスカラー要素は、
例 $b = $array[0];のような形式で参照できます。スカラー値はstring型ですから、
例 @array = ('Wolfgang', 'Amadeus', 'Mozart');という形式も可能です。配列のサイズの指定も可能です。
例 @array = 10;この例では、配列変数@arrayのサイズを10に指定しています。また配列に要素を付け加えるには、演算子","を以下のように用います。
例 @array = ('Wolfgang', 'Amadeus'); @array = @array , 'Mozart';この結果配列変数@arrayは@array = ('Wolfgang', 'Amadeus', 'Mozart');と等価になります。上の表式は以下のように簡単化できます。
例 @array = ('Wolfgang', 'Amadeus'); @array ,= 'Mozart';ダブルクオーテーションで挟まれた文字列中では、配列変数も変数展開されます。
例 @array = ('Wolfgang', 'Amadeus', 'Mozart'); $b = "@array";この結果、$bは'WolfgangAmadeusMozart'になります。各要素間は特殊変数$,で区切られますが、このデフォルト値が""であるためこのような出力結果になります。以下のように$,を再定義すると、
例 $, = ' ' @array = ('Wolfgang', 'Amadeus', 'Mozart'); $b = "@array";$bは、'Wolfgang Amadeus Mozart'となります。配列要素の参照も以下のように変数展開されます。
例 @array = ('Wolfgang', 'Amadeus', 'Mozart'); $b = "$array[1]";$bは'Amadeus'になります。