スポンサーリンク

最低限覚えておきたいPHPの基本文法

2019年3月11日

PHPに関する基本的な文法などを備忘録がてらまとめたいと思います。

Contents

スポンサーリンク

PHPとは

PHPとは、動的なWebページを生成するWebアプリケーションのサーバサイド開発に用いられるスクリプト言語です。

スクリプト言語なので、Javaのようにビルドする必要はなくファイルをそのままWebサーバに格納するだけで動作します。

C言語ベースのため、文法もC言語に似ている部分は多々あるので、C経験者にとってはハードルが低いと思います。

また面倒なメモリの解放も開発者は意識しなくて良いので解放漏れによるメモリーリークを回避することができます。

ファイルの拡張子は「.php」で通常のテキストで構成されているのでエディタで開いてちょこっと直すといった事も可能です。

難易度は低めで入門者向けのプログラミング言語としても用いられています。

Webアプリケーションを簡単に作成するためのひな型(フレームワーク)も豊富で、ネット上にも有益な情報が多々あるため調べるとすぐ解決することも多いです。

公式サイト

公式サイトは日本語対応していて、またサンプルも多いのでわかりやすいです。

公式サイト 

各種構文

基本

「<?php ~ ?>」で括られた箇所がPHPとして認識される。

なお、全てPHPの処理で構成されHTMLと混在しない場合は、閉じタグの「?>」は無くてもよい。

行の終端は「;」(セミコロン)で終わる。

例)HTMLとPHPの混在

<!DOCTYPE html>
<html>
  <head>
  </head>
  <body>
    <?php echo "Hello World!"; ?><!-- 閉じタグが必要 -->
  </body>
</html>

例)PHPのみ

<?php
echo "<!DOCTYPE html>";
echo "<html>";
echo "  <head>";
echo "  </head>";
echo "  <body>";
echo "    Hello World!";
echo "  </body>";
echo "</html>";

どちらも結果は「Hello World!」となります。

Hello World!

出力処理

「echo」と「print」でHTML文章などのレスポンスを出力できる。

echo

<?php
echo "文字列";

print

<?php
print "文字列";

変数

先頭に$をつけることで変数として取り扱える。

JavaやC言語と違って変数に型はなく、文字列が入っている変数に数値を代入するといった上書きも可能です。

<?php
    $hoge = "hoge"; //"hoge"という文字列が設定される
    $hoge = 2;      //2という数値に上書きされる
    echo $hoge;     //2が出力される

コメント

1行コメントは「/」、複数行コメントは「/* ~ */」で括られた中がコメントとなります。

<?php
    // スラッシュ2つで1行コメント
    $hoge = 1;

    /* スラッシュ+アスタリスクだと、
       括られた範囲が全てコメントになる */
    $hoge = 1;

演算子

基本的な演算は可能でインクリメント、デクリメントもあります。

<?php
    $value = 1 + 1;      //value = 2
    $value = $value - 1; //value = 1
    $value = 5 * 2;      //value = 10
    $value = $value / 4; //value = 2.5 ← 小数も表現可能
    $value = 10 % 4;     //value = 2 ← 10 / 4の余り

    $value = 1;
    $value += 2;         //value = value + 2と同じ

    $value = 2;
    $value++;            //インクリメントもできる。value = 3
    $value--;            //もちろんデクリメントも。value = 2

    $value = 2;
    echo $value++;       //後置なのでインクリメント前の2が出力される
    $value = 2;
    echo ++$value;       //前置なのでインクリメント後の3が出力される

三項演算子

便利な三項演算子も用意されています。

<?php
    $value = 2;
    $result = ($value == 2) ? "valueは2です" : "valueは2ではありません";
    /* $valueが2の場合、コロンの前の処理が行われ、2以外の場合は後の処理が行われる。
     * 上記だと、result変数に”valueは2です”という文字列が入る。
     */

配列

配列も直感的でわかりやすいです。

一次元配列

<?php
    $array = array();               //空の配列ができる
    $array = [];                    //大括弧で書くこともできる
    $array[0] = "1つめ";             //要素0と要素1に文字列を設定
    $array[1] = "2つめ";             //配列の要素(index)は0から始まる

    $array = array("1つめ", "2つめ"); //宣言と同時に初期化も可能

    $array = ["1つめ", 123];         //文字列と数値の混同も可能
    echo $array[0];                 //"1つめ"という文字列を出力
    echo $array[1];                 //123という数値を出力

多次元配列

サンプルでは二次元配列です。

<?php
    /* 要素0番目の配列の要素0番目に文字列の"1"
     * 要素0番目の配列の要素1番目に文字列の"2"
     * 要素1番目の配列の要素0番目に文字列の"データ1"
     * 要素1番目の配列の要素1番目に文字列の"データ2"
     * を格納する */
    $array = array(array("1", "2"), array("データ1", "データ2"));
    $array = [["1", "2"], ["データ1", "データ2"]];
    $array[0][1] = "3";      //"2"を”3”に更新
    $array[1][0] = "データ0"; //"データ1"を”データ0”に更新

    echo var_dump($array);   //変数のダンプをまとめて出力。(デバッグ時によく使う)

連想配列

通常の配列は要素のX番目という指定しかできませんが、任意の文字列をキーとする連想配列も用意されています。

<?php
    //"Key1"というキーに"Key1のデータ"という文字列を紐付け、
    //"Key2"というキーに"Key2のデータ"という文字列を紐付ける
    $array = array("Key1" => "Key1のデータ", "Key2" => "Key2のデータ");

    echo $array["Key2"]; //キーを指定して値を取得する。この場合"Key2のデータ"という文字列を出力

続きは後日・・

スポンサーリンク

WEB

Posted by えず