PHP WEB制作

phpフレームワークlaravel4でデータベースを操作してみました。

投稿日:2013年12月4日 更新日:

phpのフレームワークlaravel4でデータベースの操作をためしました。
laravel4では、「Eloquent ORM」が含まれており、簡単にデータベースの操作が可能です。

1. 今回ブログの記事とコメント用のテーブルを操作します。
CREATE TABLE IF NOT EXISTS `entries` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`title` varchar(100) DEFAULT NULL,
`text` varchar(100) DEFAULT NULL,
`updated_at` datetime DEFAULT NULL,
`created_at` datetime DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

CREATE TABLE IF NOT EXISTS `comments` (

`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`entry_id` int(10) unsigned DEFAULT NULL,
`text` varchar(100) DEFAULT NULL,
`updated_at` datetime DEFAULT NULL,
`created_at` datetime DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

2. 接続するデータベースの指定
app/config/database.phpの以下の部分を編集します。
‘mysql’ => array(
‘driver’ => ‘mysql’,
‘host’ => ‘localhost’,
‘database’ => ‘laravel’,
‘username’ => ”,
‘password’ => ”,
‘charset’ => ‘utf8′,
‘collation’ => ‘utf8_unicode_ci’,
‘prefix’ => ”,
),

3. app/models/Entry.phpとComment.phpを作成します。

ファイルの中身は、
– Entry.php
<?php
class Entry extends Eloquent{
// 1(エントリー)対多(コメント)の関連を設定します。
public function comment() {
return $this->hasMany(‘Comment’);
}
}

– Comment.php
<?php
class Comment extends Eloquent{
// 1(エントリー)対多(コメント)の関連を設定します。
public function entry() {
return $this->belongsTo(‘Entry’);
}
}
です。

 

4. コントローラのアクションでデータベースを送信します。

public function showTest() {
$entry = Entry::find(1); // 1記事目取得します。
echo $entry->title; // 1記事目のタイトルが表示されます。

$comments = Entry::find(1)->comment; // 1記事目のコメントを取得します。
foreach ($comments as $key => $comment) {
echo $comment->text.”<br>”; // コメントの内容を表示します。
}
return View::make(‘test’);
}

-PHP, WEB制作

関連記事

レスポンシブにも対応!行ごとのブロック要素の高さを自動で合わせる方法。

レスポンシブにも対応!行ごとのブロック要素の高さを自動で合わせる方法。

ブロック要素の高さを揃えるJavaScriptはいくつかあります。 その中でも行ごとの高さを変えたい場合に便利な「fixHeight.js」をご紹介します。 目次1 「fixHeight.js」の設置 …

ホームページのリニューアルを考えたときに意識すること

ホームページのリニューアルを考えたときに意識すること

早稲田大学のオフィシャルサイトが5日にリニューアルされたのはご存知でしょうか? 見ていただけるとすぐに分かると思うのですが、このリニューアルがスゴイ! 大学のサイトとは思えないですよね。 あまりにもお …

ブクマするならコレ! 素材探しで迷わない、商用利用可能な素材サイト

ブクマするならコレ! 素材探しで迷わない、商用利用可能な素材サイト

こんにちは! Webデザイナー初心者のKです! 本日はWeb制作をされている方なら誰しもがぶちあたるであろう、 著作権について、色々と熱く語ります!! ・・というのは、長ーーーくなるので!! 商用利用 …

データベース(MySQL)の日付操作について

データベース(MySQL)の日付操作について

データベース(MySQL)で普段よく使いますが、 なかなか覚えられない、日付の操作のSQLについて書きます。 以下のようなニュースのテーブルが存在します。 CREATE TABLE IF NOT EX …

javascriptの便利なライブラリについて

javascriptの便利なライブラリについて

オブジェクト(配列)や文字列の処理は自作の作成した場合、時間を要してしまします。 そこで、これらの処理をおこなう際に便利なJavascriptライブラリを紹介します。 1. underscore.js …