使用try的PHP PDO
问题描述:
为了获得最佳实践,我应该将try命令放在try语句中,还是准备和执行足够?使用try的PHP PDO
$sql = "SELECT * FROM links WHERE device = 'mobile' AND category = ? ORDER BY category asc, link_id asc";
try{
$sth = $dbh->prepare($sql);
$sth->bindValue(1, $cat, PDO::PARAM_STR);
$sth->execute();
}
catch(\PDOException $ex){
print($ex->getMessage());
}
if($sth->rowCount()) {
print("<a data-rel=\"dialog\" data-transition=\"pop\" href=\"index.php?action=addnew&cat=$cat\">Add New Menu Item</a><br/><br/>");
print("<ul data-role=\"listview\" data-filter=\"true\">");
while($row = $sth->fetch(PDO::FETCH_BOTH)) {
print("<li>");
print("<a data-transition='fade' href='$row[$COL_HREF]'>$row[$COL_LINK_NAME]<br/></a>");
print("</li>\n");
}
print("</ul>");
}
答
里面的try
与其余的代码。
如果你try
代码产生异常,你打印出来的异常消息,但随后继续检查rowCount()
,这是依赖于$sth
被成功地设置和执行。
高兴地看到一个PDO查询的变化 – asprin 2013-03-23 14:28:29