Что означают «% sUser» и «% d» в этом коде? - PullRequest
2 голосов
/ 30 августа 2010

PHP функция:

public static function getById($uid)
{
    $u = new User();

    $query = sprintf('SELECT USERNAME, PASSWORD, EMAIL_ADDR, IS_ACTIVE ' .
        'FROM %sUSER WHERE USER_ID = %d',
        DB_TBL_PREFIX,
        $uid);
    $result = mysql_query($query, $GLOBALS['DB']);

    if (mysql_num_rows($result))
    {
        $row = mysql_fetch_assoc($result);
        $u->username = $row['USERNAME'];
        $u->password = $row['PASSWORD'];
        $u->emailAddr = $row['EMAIL_ADDR'];
        $u->isActive = $row['IS_ACTIVE'];
        $u->uid = $uid;
    }
    mysql_free_result($result);

    return $u;
}

Пожалуйста, помогите мне, я не могу понять, что означают эти "% sUser" и "% d"

Ответы [ 2 ]

3 голосов
/ 30 августа 2010

%s является «Строкой» и заменяется значением DB_TBL_PREFIX

%d является числом, которое заменяется значением $uid

http://us3.php.net/manual/en/function.sprintf.php

0 голосов
/ 30 августа 2010

%s и %d являются спецификаторами типов для строкового аргумента sprintf.Проверьте документы для функции здесь: http://us2.php.net/sprintf.

...