try catchブロックを使用しているときにPDOエラーをうまく処理するにはどうすればよいですか?PDOのtry-catchブロックの使用方法
現在、私はこのようなものがあります:
BlogModel.php
class BlogModel extends Model {
public function save($id, $value) {
$stmt = $this->getDb()->prepare('UPDATE setting SET name = :name WHERE id = :id');
$stmt->bindParam(':id', $id);
$stmt->bindParam(':name', $values);
return ($stmt->execute() !== false) ? $id : false;
}
}
ので、コントローラBlogController.phpで、私はこのようなものだろう:
<?php
class Blog extends Controller {
public function comments()
{
$data = array();
$model = new BlogModel;
if ($model->save(2,'test')) {
$data['result']['message'] = 'Settings saved';
$data['result']['status'] = 'success';
} else {
$data['result']['message'] = 'Could not save the settings';
$data['result']['status'] = 'error';
}
$view = new View("view.php", $data)
$view->render();
}
}
?>
を
これは私がif
conditを使用してPDOエラーを処理する方法ですイオン。これをtry catchブロックに変換する適切な方法は何ですか?変数($data['result']['message']
$data['result']['status']
)を常にコーディングする必要はありません。
「スロー例外」をキャッチブロックに追加することは、どうにかできますか?
コントローラーにtry catchブロックがたくさんある場合は、見た目が乱雑になります。そうですか?
ちょっと好奇心:このCakePHPですか?私は言うことができません。 –
@SimpleCoder私が書いた自分のMVC;) –
ああ、きちんとしている。私は、PDOの直接の使用は、ケーキのdbインターフェイスとは対照的に、それを与えているはずだと思います。 –