【PHP講座03】変数とは?使い方を解説!

PHP講座

前回は、PHPの基本構文と、HTMLとどう関係しているかを解説してきた。

特に基本構文この後ずっと使うので、まだ分からない方はさきにそちらを理解しておこう。

以下がその記事だ。

【PHP講座02】PHPの基本構文とHTMLとの関わり | Shino’s Mind Archive

さて、今回は前回最後に書いた通り、変数について見ていく。

まだしばらく、常に使うものが出てくるので、確実に進めていこう。

シノ
シノ

ここも超重要!

自分でも色々組みながら進めていこう!

スポンサーリンク

変数

変数とは

プログラミング自体初めての方向けに、変数の説明をしておこう。

変数とは、データを入れておくことができる箱のようなものだ。

名前をつけた箱の中にデータを入れておき、後で使いたいときにそれを呼び出すことができる。

基本的には、どの言語でも変数の宣言(初期化)が必要になる。

まあ、先に中身を入れておかないと使えないのは当然だろう。

その他、という考え方がある。

これは、その変数の中に入っているデータがどんな種類のものなのかという考え方だ。

言語によっては、変数宣言時にこの型も指定しなければいけない。

後で詳しく解説するが、PHPは型の指定は不要だ。

PHPの変数の使い方

では、ここからPHP変数に入っていこう。

PHPでは、変数必ず「$」で始まる名前をつける

そして、中身を入れなければいけないのだが、その時にはイコール一つを使う。

PHPに限らず、多くの言語でイコール一つは右辺のデータを左辺に代入する、という意味になるので、これも覚えておこう。

当然のことながら、先にデータが入った状態で別のデータを代入すると、上書きされるのでそれも注意しておこう。

では、前回の文字列出力も併せて、サンプルを書いてみよう。

文字列Hello World!を変数$strに入れて、それを表示してみる。

<?php
    $str = "Hello World!";
    echo $str;
?>

これでアクセスすると、前回までと同じく「Hello World!」と表示されるはずだ。

ちょっと注意して欲しいのは、3行目の出力。

前回は文字列を直接表示していたので、ここをダブルクォーテーションで囲っていた

しかし、今回は変数の中にその文字列が入っている

それを表示するので、ここには変数名をそのまま書けばOKだ。

上では文字列を入れていたが、もちろん数字なども入れることができる。

試しに、二つの数字を用意して、その合計をまた別の変数に入れて表示してみよう。

<?php
    $num1 = 3;
    $num2 = 2;
    $sum = $num1 + $num2;
    echo $sum;
?>

これを実行すると、今度は「5」だけ表示される。

このように、代入の右辺に計算式などを入れることも可能だ。

その場合、計算の結果が変数に入ることになる。

もう一つ、左辺に書いた変数を右辺に入れることもできる

<?php
    $num = 5;
    $num = $num + 3;
    echo $num;
?>

3行目で、左辺と右辺に同じ変数を使ってみた。

さて、この結果はどうなるだろうか?

答えは、8となる。

まず、3行目に入った時、$numに入っているのは5だ。

この状態で、右辺の計算が行われ、それが8となる。

それを左辺に代入するので、$numが8になる、というわけだ。

なお、このように変数内の数値に何かを足したり引いたり、という計算を行う場合には省略形が用意されている

イコールの左にその演算子を書き、右に足したり引いたりしたい数を書く。

上のsample06.phpは以下のように書き直すことができるのだ。

<?php
    $num = 5;
    $num += 3;
    echo $num;
?>

変数名の注意点

変数名をつけるときに、いくつか注意点がある。

まず、変数名の先頭にすることができるのは、半角英字と半角アンダーバーだ。

…が、基本的には先頭は英小文字にしておこう。

二文字目以降であれば、数字も使用することができる。

また、英大文字と英小文字の違いは区別される

つまり、$num$Numは別の変数として扱われるということだ。

その他、これは慣習のようなものだが、変数名に二つ以上の単語を使う場合は、二つ目以降の単語の先頭を大文字にすることが多い。

例えば、$userNameといった感じだ。

最後に、PHPに限らず予約語というものが存在する。

これは、事前に言語側で使用するよと決められているもので、通常はこれを変数名などにはできない

PHPの場合は一応変数名にできるらしいが、しない方がいいだろう。

PHPの予約語リストが一覧になっているページを以下に貼っておくので、一通り目を通してみて欲しい。

PHP: キーワードのリスト - Manual

PHPにおける変数の型

これまで解説してきたように、PHPでは変数を使うときにいきなり代入する形で書いた

そのため、見た目にはその変数の型が分からない状態だ。

しかし、内部的にはしっかり区別されているので、その点は注意しておこう。

例えば、$num = 3;と、$num = "3";は異なるものを代入している。

一つ目は数値としての3を、二つ目は文字列としての3を入れていることになるのだ。

見た目には出てこないので組みやすい反面、エラーが出たときにわけがわからなくなりやすいので、しっかりと意識しておいてほしい。

変数の型は色々あるが、一旦は…

  • 整数
  • 小数
  • 文字列

あたりがあると認識しておいてもらえればいい。

その他もあるが、それは出てきたときに紹介しよう。

文字列の連結

ちょっと短くなってしまったので、もう一つ解説しておこう。

複数の文字列連結するときの書き方だ。

PHPでは、二つの文字列をドット「.」で挟むことでつなげることができる

例えば、上で出した計算のプログラムをちょっと修正してみよう。

<?php
    $num = 5;
    $num += 3;
    echo "計算の結果は" . $num . "です。";
?>

出力の部分で文字列の連結を使っている。

このようにすると、「計算の結果は」という文字列$numに入っているデータ「です。」という文字列が連結されたものが出力される。

$numに入っているのは8なので、最終的に「計算の結果は8です。」と表示されるのだ。

他のJavaやCといった言語では「+」がよく使われるが、PHPはドットなので、間違えないようにしておこう。

なお、上で解説した、ある変数に加えるといったこともできる。

例えば…

<?php
    $str = "文字列1";
    $str .= "文字列2";
    echo $str;
?>

このように書けば、3行目で$strに「文字列1文字列2」というデータが入る。

これもよく使うので覚えておこう。

おわりに

今回は基本の一つ、変数を解説した。

ひとまずは、データを入れる箱のようなもの先に代入が必要先頭には$をつける、くらいを意識しておいてもらえれば十分だろうか。

は、いったん存在を知っておいてもらえれば大丈夫だ。

さて、次回はこの変数をちょっと拡張して、配列を紹介しよう。

今回の考え方が基になるので、しっかりと理解しておいてほしい。

コメント

タイトルとURLをコピーしました