小编Tom*_*Tom的帖子

什么时候应该使用 PDO 使用 `try` 和 `catch` 来准备和执行?

我已经使用 PDO 几年了,但我从未充分研究过何时应该使用try和准备和执行catch

我的理解是,当数据可能包含用户输入时,您应该使用tryand 。catch

所以这个例子的代码是安全的:

public function getDetails($filename, $what){
    $query = $this->handler->prepare('SELECT * FROM videos WHERE v_fileName = :v_fileName');
    try{
        $query->execute([
            ':v_fileName' => $filename
        ]);
    }catch(PDOException $e){
        return $e->getMessage();
    }
}
Run Code Online (Sandbox Code Playgroud)

$filename在此示例中,内容来自 URL。

例如,当没有从 URL 中获取任何内容时,它也会完全保存:

$query = $this->handler->prepare('SELECT * FROM videos WHERE u_id = :u_id ORDER BY v_id LIMIT :climit,1');
$query->execute([
    ':u_id'     => $this->user->getChannelId($userid),
    ':climit'   => $optional[1]
]);

$fetch = $query->fetch(PDO::FETCH_ASSOC);
Run Code Online (Sandbox Code Playgroud)

我对准备陈述的理解是否正确?如果不正确,我该怎么做?

php pdo exception

3
推荐指数
1
解决办法
276
查看次数

标签 统计

exception ×1

pdo ×1

php ×1