mysqli_result::fetch_object
mysqli_fetch_object
(PHP 5, PHP 7, PHP 8)
mysqli_result::fetch_object -- mysqli_fetch_object — Recebe a próxima linha de um resultado como um objeto
Descrição
Estilo orientado a objetos
$class
= "stdClass", array $constructor_args
= []): object|null|falseEstilo procedural
$result
, string $class
= "stdClass", array $constructor_args
= []): object|null|false
Recebe uma linha de dados do resultado e retorna-a como um objeto,
onde cada propriedade representa o nome da coluna do resultado.
Cada chamada subsequente a esta função retornará a linha seguinte dentro
do conjunto de resultados, ou null
se não houver mais linhas.
Se duas ou mais colunas do resultado tiverem o mesmo nome, a última coluna terá precedência e irá sobrescrever os dados anteriores. Para acessar múltiplas colunas com o mesmo nome, mysqli_fetch_row() pode ser usada para receber o array indexado numericamente, ou apelidos podem ser usados na lista de seleção da consulta SQL para dar nomes diferentes às colunas.
Note: Esta função define as propriedades do objeto antes de chamar o construtor do objeto.
Note: Os nomes de campos retornados por esta função diferenciam maiúsculas e minúsculas.
Note: Esta função define campos NULL como o valor
null
do PHP.
Parâmetros
-
result
Somente no estilo procedural: Um objeto mysqli_result retornado por mysqli_query(), mysqli_store_result(), mysqli_use_result() ou mysqli_stmt_get_result().
class
-
O nome da classe a instanciar, definir propriedades e retornar. Se não especificada, um objeto stdClass é retornado.
constructor_args
-
Um array opcional de parâmetros para passar ao construtor de objetos da classe definida em
class
.
Valor Retornado
Retorna um objeto que representa a linha recebida, onde cada propriedade
representa o nome da coluna do resultado, null
se não
houver mais colunas no resultado, ou false
em caso de falha.
Erros/Exceções
Um exceção ValueError é lançada quando
o parâmetro constructor_args
é não vazio com a classe não possuindo construtor.
Registro de Alterações
Versão | Descrição |
---|---|
8.3.0 |
Agora lança uma exceção ValueError quando
o parâmetro constructor_args é não vazio com a classe não possuindo construtor;
anteriormente uma Exception era lançada.
|
8.0.0 |
constructor_args agora aceita [] para construtores sem parâmetros;
anteriormente, uma exceção era lançada.
|
Exemplos
Example #1 Exemplo de mysqli_result::fetch_object()
Estilo orientado a objetos
<?php
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
$query = "SELECT Name, CountryCode FROM City ORDER BY ID DESC";
$result = $mysqli->query($query);
while ($obj = $result->fetch_object()) {
printf("%s (%s)\n", $obj->Name, $obj->CountryCode);
}
Estilo procedural
<?php
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$link = mysqli_connect("localhost", "my_user", "my_password", "world");
$query = "SELECT Name, CountryCode FROM City ORDER BY ID DESC";
$result = mysqli_query($link, $query);
while ($obj = mysqli_fetch_object($result)) {
printf("%s (%s)\n", $obj->Name, $obj->CountryCode);
}
Os exemplos acima produzirão algo semelhante a:
Pueblo (USA) Arvada (USA) Cape Coral (USA) Green Bay (USA) Santa Clara (USA)
Veja Também
- mysqli_fetch_array() - Recebe a próxima linha de resultado como array associativo, numérico, ou ambos
- mysqli_fetch_assoc() - Obtém a próxima linha do conjunto de resultados como um array associativo
- mysqli_fetch_column() - Recebe uma única coluna da próxima linha de um resultado
- mysqli_fetch_row() - Obtém a próxima linha de um resultado como um array enumerado
- mysqli_query() - Executa uma consulta no banco de dados
- mysqli_data_seek() - Ajusta o ponteiro do resultado para uma linha arbritária no resultado