• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • PDOStatement::fetchColumn()

    (PHP 5 >= 5.1.0, PHP 7, PECL pdo >= 0.9.0)

    从结果集中的下一行返回单独的一列。

    说明

    PDOStatement::fetchColumn([int $column_number= 0]): string

    从结果集中的下一行返回单独的一列,如果没有了,则返回FALSE

    参数

    $column_number

    你想从行里取回的列的索引数字(以0开始的索引)。如果没有提供值,则PDOStatement::fetchColumn()获取第一列。

    返回值

    PDOStatement::fetchColumn()从结果集中的下一行返回单独的一列。

    Warning

    如果使用PDOStatement::fetchColumn()取回数据,则没有办法返回同一行的另外一列。

    范例

    返回下一行的第一列

    <?php
    $sth = $dbh->prepare("SELECT name, colour FROM fruit");
    $sth->execute();
    /* 从结果集中的下一行获取第一列  */
    print("从结果集中的下一行获取第一列:\n");
    $result = $sth->fetchColumn();
    print("name = $result\n");
    print("从结果集中的下一行获取第二列:\n");
    $result = $sth->fetchColumn(1);
    print("colour = $result\n");
    ?>
    

    以上例程会输出:

    从结果集中的下一行获取第一列:
    name = lemon
    从结果集中的下一行获取第二列:
    colour = red
    

    参见

    • PDO::query() 执行 SQL 语句,以 PDOStatement 对象形式返回结果集
    • PDOStatement::fetch() 从结果集中获取下一行
    • PDOStatement::fetchAll() 返回一个包含结果集中所有行的数组
    • PDO::prepare() 准备要执行的语句,并返回语句对象
    • PDOStatement::setFetchMode() 为语句设置默认的获取模式。
    fetchColumn return boolean false when a row not is found or don't had more rows.
    This is an excellent method for returning a column count. For example:
    <?php
    $db = new PDO('mysql:host=localhost;dbname=pictures','user','password');
    $pics = $db->query('SELECT COUNT(id) FROM pics');
    $this->totalpics = $pics->fetchColumn();
    $db = null;
    ?>
    In my case $pics->fetchColumn() returns 641 because that is how many pictures I have in my db.