PHP PDO - $ dbh和$ sth代表什么?

时间:2011-06-16 23:21:23

标签: php pdo coding-style

在PDO示例中,我经常发现使用缩略词$dbh$sth。我想$dbh代表“数据库句柄” - 对吗?那么$sth呢? “声明处理”?

是否有充分理由使用上述代替$db_connection$query(或其他适当的选项)?

3 个答案:

答案 0 :(得分:45)

$ dbh =“数据库句柄”

$ sth =“声明句柄”

我更喜欢较长的形式,因为它们更具描述性。如果您是明确的,即使使用常见的首字母缩写词和缩写词,它通常对未来的维护者有帮助。

过去,当硬盘容量,内存和带宽较少时,缩写可能有意义。今天,(可以说)在生成可读,可维护的代码方面具有更大的价值。

答案 1 :(得分:4)

你的直觉对于这些变量名称代表什么是正确的,但这并不是说PDO的每次使用都使用那些变量名,只是你正在查看的特定代码。

变量名对于正确执行传递给它的函数并不重要。我看到人们在整个项目中使用变量名称的猥亵行为......它与函数无关。为了您自己,以及任何未来与您合作的开发人员,变量名称应该简洁明了。当你可以提供帮助时,应该避免使用缩写词,因为$hndlr是你如何缩写“处理程序”的其他人可能不清楚 - 正如这个问题所证明的那样,缩写很少是直观的。

开发或选择编码标准并坚持下去更为重要。如果您的变量都是lower_case_with_underscores,那么无论您在项目之外的其他代码中看到的是什么,都要坚持使用。

答案 2 :(得分:1)

了解它们是什么并正确使用它们非常重要。您可以随意给他们打电话。考虑到“句柄”这个词在其他领域并不常见,我通常会给我的PDO变量命名不同。

我的连接,我叫$ pdo_db。语句句柄我根据它所代表的内容给出一个描述性名称,例如$ pdo_user_info。这是一个平衡你自己的品味的问题,让你的代码的未来读者可以理解。