mysqli_stmt::fetch

mysqli_stmt_fetch

(PHP 5, PHP 7, PHP 8)

mysqli_stmt::fetch -- mysqli_stmt_fetchRecebe resultados de uma instrução preparada nas variáveis vinculadas

Descrição

Estilo orientado a objetos

public mysqli_stmt::fetch(): ?bool

Estilo procedural

mysqli_stmt_fetch(mysqli_stmt $statement): ?bool

Recebe o resultado de uma instrução preparada nas variáveis vinculadas por mysqli_stmt_bind_result().

Note:

Observe que todas as colunas precisam estar vinculadas pela aplicação antes de chamar a função mysqli_stmt_fetch().

Note:

Os dados são transferidos sem buffer quando não se chama a função mysqli_stmt_store_result(), o que pode reduzir o desempenho (mas reduz o consumo de memória).

Parâmetros

statement

Somente no estilo procedural: Um objeto mysqli_stmt retornado por mysqli_stmt_init().

Valor Retornado

Valor Retornado
Valor Descrição
true Sucesso. Dados foram recebidos
false Error occurred
null Não há mais linhas/dados ou ocorreu um truncamento de dados

Erros/Exceções

Se o relatório de erros da extensão mysqli estiver habilitado (MYSQLI_REPORT_ERROR) e a operação solicitada falhar, um aviso será gerado. Se, além disso, o modo for definido como MYSQLI_REPORT_STRICT, uma exceção mysqli_sql_exception será lançada em vez do aviso.

Exemplos

Example #1 Estilo orientado a objetos

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* verifica a conexão */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 150,5";

if ($stmt = $mysqli->prepare($query)) {

    /* executa a instrução */
    $stmt->execute();

    /* vincula as variáveis do resultado */
    $stmt->bind_result($name, $code);

    /* recebe os valores */
    while ($stmt->fetch()) {
        printf ("%s (%s)\n", $name, $code);
    }

    /* fecha a instrução */
    $stmt->close();
}

/* fecha a conexão */
$mysqli->close();
?>

Example #2 Estilo procedural

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* verifica a conexão */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 150,5";

if ($stmt = mysqli_prepare($link, $query)) {

    /* executa a instrução */
    mysqli_stmt_execute($stmt);

    /* vincula as variáveis do resultado */
    mysqli_stmt_bind_result($stmt, $name, $code);

    /* recebe os valores */
    while (mysqli_stmt_fetch($stmt)) {
        printf ("%s (%s)\n", $name, $code);
    }

    /* fecha a instrução */
    mysqli_stmt_close($stmt);
}

/* fecha a conexão */
mysqli_close($link);
?>

Os exemplos acima produzirão:

Rockford (USA)
Tallahassee (USA)
Salinas (USA)
Santa Clarita (USA)
Springfield (USA)

Veja Também