Zend_Db_TableでO/Rマッピング -基本操作編
Zend_Db_TableでO/Rマッピング準備編の続きです。
テーブル定義や宣言したクラスなどは事前にご確認ください。
[ここでやりたい事]
- 新規に商品を追加する(行の追加)
- 商品情報を更新/削除する(行の更新/削除)
- もちろん、SQLは一切、書かない
■商品の追加(行の追加)
<?php // DBMクラスからZend_Dbの接続を取得 $con=DBM::getConnection(); // テーブルオブジェクト/コンストラクタに$conを入れる $itemTable=new ItemTable($con); // テーブルオブジェクトに新しい行の領域を作成 $row=$itemTable->createRow(); /* * データをセット * itemテーブルのフィールドに情報をセットする * 切れ味抜群な在庫30本の15000円のサムライソードを商品テーブルに保存する * idフィールドはauto_increment / 未設定の項目にはテーブルのデフォルト値 * */ $row->name="サムライソード"; $row->detail="切れ味抜群です"; $row->stock =30; $row->price =15000; // 新規にレコードを保存 // 戻り値はlastInsertIdが返ってきます。 $id=$row->save(); ?>
■商品の更新
<?php // 商品ID $id=1; // $idからid=1の行を取得(単一) $row=$itemTable->fetchRow("id=".$id); /* * データをセット * 価格は12000円に値下げする * */ $row->price =12000; /* * 既存のレコードを保存 * 返り値はユニークID * */ $row->save(); ?>
■商品の削除
<?php // 商品IDから商品を検索する $id=1; // $idからid=1の行を取得(単一) $row=$itemTable->fetchRow("id=".$id); // 削除 $row->delete(); ?>
基本操作編 その1 はここまで。
SQLを書かずに、INSERTやUPDATEを行ってくれるなんて素敵です。
次のエントリーはSELECTの発行です。
PHPフレームワーク Zend Framework入門
posted with amazlet at 08.12.05