自分用のチートシート(基本)
#よくある定番の流れ
<?php
//エラーと警告を表示する設定
ini_set( 'display_errors', 1 );
ini_set( 'error_reporting', E_ALL );
//DBへ接続
$db = new mysqli('DBのアドレスまたはlocalhost', 'ユーザ名', 'パスワード', '使うDB名');
if( mysqli_connect_errno($db) ) { //接続失敗
mysqli_close($db);
}
else{ //接続成功
//入力したいSQL文の作成
$sql = 'select * from article'
//SQL文を実行
$res = $db->query($sql);
//結果のすべての行を連想配列・数値添字配列で取得
$row = $res->fetch_all();
//欲しい情報を上手に取り出すために配列を表示させて確認
//echo var_dump($row);
$title1 = $row[0][0];
$year1 = $row[0][1];
$title2 = $row[1][0];
$year2 = $row[1][1];
//リソースの開放
$sql->free();
$res->free();
$row->free();
mysqli_close($db);
}
?>
#fetch_all()で取り出した情報の見方
//SQL文に対する結果の例
+-----------------------+
| tag_name |
+-----------------------+
| 音楽 |
| 食事 |
| 日常 |
+-----------------------+
//これを$res->fetch_all()で取り出して
//var_dump()で見ると次のように表示される
//(インデントは僕がつけました)
array(3) {
[0]=> array(1) { [0]=> string(6) "音楽" }
[1]=> array(1) { [0]=> string(6) "食事" }
[2]=> array(1) { [0]=> string(6) "日常" }
}
//二重の配列になっているとわかる
//この3つを取り出すのは次の通り
$tag1 = $res->fetch_all()[0][0]; //音楽
$tag2 = $res->fetch_all()[1][0]; //食事
$tag3 = $res->fetch_all()[2][0]; //日常
#コメント
正直僕は初心者なので、変なとことかあるかも。。。
連想行列好きじゃないから添字行列だけで取れれば良いんだけど、
どうやるか分かんないです誰か教えてください。
この処理を表示用のページに書くのはナンセンスなので、関数化して別のファイルに分けるのが妥当だと思う。