_db_query_callback

Хочешь помочь с переводом? Это очень просто и быстро. Лишь зарегистрируйся, и можешь тут же начать переводить.

includes/database.inc, строка 201

Версии
5 – 6
_db_query_callback($match, $init = FALSE)

Вспомогательная функция для db_query().

Связанные темы

▾ 3 функции вызывают _db_query_callback()

db_query in includes/database.mysql-common.inc
Выполняет запрос к активной базе данных.
db_query_range in includes/database.mysql.inc
Выполняет ограниченный диапазоном запрос к активной базе данных.
db_query_temporary in includes/database.mysql.inc
Выполняет SELECT-запрос к активной базе данных и сохраняет результат во временной таблице.

Код

<?php
function _db_query_callback($match, $init = FALSE) {
  static $args = NULL;
  if ($init) {
    $args = $match;
    return;
  }

  switch ($match[1]) {
    case '%d': // We must use type casting to int to convert FALSE/NULL/(TRUE?)
      return (int) array_shift($args); // We don't need db_escape_string as numbers are db-safe
    case '%s':
      return db_escape_string(array_shift($args));
    case '%n':
      // Numeric values have arbitrary precision, so can't be treated as float.
      // is_numeric() allows hex values (0xFF), but they are not valid.
      $value = trim(array_shift($args));
      return is_numeric($value) && !preg_match('/x/i', $value) ? $value : '0';
    case '%%':
      return '%';
    case '%f':
      return (float) array_shift($args);
    case '%b': // binary data
      return db_encode_blob(array_shift($args));
  }
}
?>
Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Вход в систему