DaomancyRecord
テーブルひとつを対象とするデータアクセスオブジェクトです。
生成されたオブジェクトひとつがテーブルの行ひとつに対応する、アクティブレコードと呼ばれるパターンを使用しています。
$colsに設定した列名と同じ名前のpublicメンバ変数が生成されます。メンバ変数に値を代入しupdateメソッドをコールすることで、変更がDBに反映されます。
単独でも使用できますが、結合などをする場合はDaomancyから生成すると便利です。
変数
$table
string $table
対象テーブル名
$cols
array $cols
取得対象列名
$primaryKey
array $primaryKey
プライマリキー列
メソッド
__construct
DaomancyRecord->__construct(PDO dbh)
引数にはPDOオブジェクトを指定します
find
array(DaomancyRecord) DaomancyRecord::find(PDO dbh , string class , mixed where [ , array params ])
DBを検索し、DaomancyRecordオブジェクト(の配列)を生成します。
引数には、PDOオブジェクト、取得するDaomancyRecordオブジェクトのクラス名、検索条件を指定します。
第三引数には、検索条件を文字列で渡すか、Wheremancyオブジェクトを渡します。文字列で指定した場合、第四引数に配列でパラメータを渡します。
update
boolean DaomancyRecord->update()
現在の各プロパティの値をDBに反映します。
primaryKeyプロパティに指定した列名を検索条件としてUPDATE文を生成し実行します。
実行の結果影響された行数が1の場合trueを返し、それ以外の場合はfalseを返します。
delete
boolean DaomancyRecord->delete()
この行をDBから削除します。
実行の結果影響された行数が1の場合trueを返し、それ以外の場合はfalseを返します。
insert
boolean DaomancyRecord->insert()
この行をDBに追加します。
このメソッドを使用する場合、あらかじめ空のDaomancyRecordをnewで生成し、各フィールドに値を設定してください。
auto_inclementなどを使用する場合は、対象の列に値を設定しないでください。
INSERTやUPDATEの際にストアドファンクションを実行する必要があるなどの場合は、このメソッドをオーバーライドする必要があります。
実行の結果影響された行数が1の場合trueを返し、それ以外の場合はfalseを返します。