PHP PDO - Что означают $ dbh и $ sth? - PullRequest
37 голосов
/ 17 июня 2011

В примерах PDO я часто нахожу сокращения $dbh и $sth. Я полагаю, $dbh означает «дескриптор базы данных» - правильно? А как насчет $sth? «Дескриптор заявления»?

Существуют ли веские причины для использования вышеуказанного вместо $db_connection и $query (или других, в зависимости от ситуации)?

Ответы [ 3 ]

46 голосов
/ 17 июня 2011

$ dbh = "Дескриптор базы данных"

$ sth = "Дескриптор оператора"

Я предпочитаю более длинные формы, поскольку они более наглядны.Для будущих сопровождающих часто бывает полезно, если вы будете явными, даже при использовании общих аббревиатур и сокращений.

В прошлом, когда емкость жесткого диска, память и пропускная способность были редкими, сокращения могли иметь смысл.Сегодня (возможно) есть большая ценность в создании читаемого, поддерживаемого кода.

4 голосов
/ 17 июня 2011

Ваша интуиция была верна в отношении того, что обозначают эти имена переменных, но это не значит, что каждое использование PDO использует эти имена переменных, только конкретный код, который вы просматриваете.

Переменнаяимена никогда не важны для правильного выполнения функции, которой вы их передаете.Я видел, как люди используют матом для имен переменных во всем проекте ... это просто не имеет значения для функций .Ради вас самих и ради будущих разработчиков, которые работают с вами, имена переменных должны быть краткими и ясными.Следует избегать сокращений, когда вы можете им помочь, поскольку кому-то может быть непонятно, что $hndlr - это то, как вы сокращаете «обработчик» - как показывает этот самый вопрос, сокращения редко бывают интуитивными.

Этоболее важно, чтобы вы разработали или выбрали стандарт кодирования и придерживались его.Если все ваши переменные - lower_case_with_underscores, придерживайтесь этого независимо от того, что вы видите, как люди делают в другом коде за пределами вашего проекта.

1 голос
/ 17 июня 2011

Важно знать, кто они, и правильно их использовать. Вы можете называть их как угодно. Учитывая, что слово «handle» не часто встречается в других областях, я обычно называю переменные PDO разными именами.

Мое соединение, я называю $ pdo_db. Дескриптор оператора я даю описательное имя, основанное на том, что он представляет, например, $ pdo_user_info. Это вопрос баланса собственного вкуса с тем, чтобы сделать его понятным для будущих читателей вашего кода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...