ブログ
 

PHPとMySQLを接続する方法でオブジェクト指向型と手続き型の違いを学ぼう

       

そもそも手続き型とオブジェクト指向型の違いとは?

手続き型:言語は個々のプログラムを手続き単位で記述し、最初から順番に処理をしていく方法。

例えば一人暮らしをしている人が料理サイトを見て今日の夕飯のとんかつを作るとしましょう

<トンカツの作り方>

①お肉を切る

②味付けをする

③卵とパン粉を作る

④肉を揚げる

上記のように複数の手順を1〜4に順番並べて料理を作っていきます。

手順に沿って上から順に並べていく、これが手続き形です

オブジェクト指向型(Object-oriented)言語: 個々のプログラムをオブジェクト単位で記載する方法

オブジェクトとは?と思った方、

とんかつを給食施設で作る場合をを想像してください。

全てを1人で作らず、役割を分けて作ると思います

<給食施設のトンカツの作り方>

①指示を出すリーダー

②味付けをして卵とパン粉を塗る係

③揚げる係

④盛り付け係

このようなひとつひとつの係のような役割がオブジェクトであり、指示を出すリーダーもオブジェクトの1つです。
すなわち○○係=オブジェクト というイメージになります。

手続き型→1人で料理を作るように手順に沿ってプラグラムを書いていく方法
オブジェクト指向型→給食施設で料理を作る係のように役割を分担して書いていく方法

手続き型とオブジェクト指向型それぞれでMySQLを書く

手続き型の書き方

// データーベースの接続
$HOST='localhost';
$USERNAME = 'my_pc';
$PASSWORD = 'password';
$DBNAME = 'memo-app';
 
// サーバーに接続する
$db = mysqli_connect($HOST, $USERNAME, $PASSWORD, $DBNAME);

// クエリを実行するためのデフォルトのデータベースを選択する

mysqli_select_db($db, $DBNAME);

 

オブジェクト 指向型

オブジェクト指向はPDOクラスを利用する→PDOクラスの説明(https://www.php.net/manual/ja/class.pdo.php)

PDOは「PHP Data Objects」の略で、PHPからデータベースへ簡単にアクセスするための拡張モジュールになります。

 

// データベース接続
$user = "{ユーザー名}"; 
$password = "{パスワード}"; 
$dbh = new PDO("mysql:host={ホスト名}; dbname={データベース名}; charset={文字エンコード}", "$user", "$password");

// PDO::ATTR_ERRMODEという属性でPDO::ERRMODE_EXCEPTIONの値のエラーが発生した時にPDO::EXCEPTIONのエラーを飛ばしてくれる
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

// PDO::queryでクエリを実行する
$stmt = $dbh->query('SELECT * FROM user');
// PDO::FETCH_ASSOCで取得する全てのデータを取得する
$result = $stmt->fetchAll(PDO::FETCH_ASSOC);

まとめ

以上が手続き型とオブジェクト指向型の説明になります。

最後までご覧いただきありがとうございました。

 
  • このエントリーをはてなブックマークに追加