downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

mysqli_fetch_field_direct> <mysqli_fetch_array
[edit] Last updated: Fri, 24 Feb 2012

view this page in

mysqli_result::fetch_assoc

mysqli_fetch_assoc

(PHP 5)

mysqli_result::fetch_assoc -- mysqli_fetch_assocObtem uma linha do conjunto de resultados como uma matriz associativa

Descrição

Estilo orientado a objeto (metodo):

array mysqli_result::fetch_assoc ( void )

Estilo de procedimento:

array mysqli_fetch_assoc ( mysqli_result $result )

Retorna uma matriz associativa que corresponde a linha obtida, ou NULL se não houverem mais linhas.

A função mysqli_fetch_assoc() é usada para retornar uma matriz associativa representando a próxima linha no conjunto de resultados representado pelo parâmetro result, aonde cada chave representa o nome de uma coluna do conjunto de resultados.

Se duas ou mais colunas do resultado tiverem o mesmo nome do campo, a ultima coluna terá precedencia, Paa acessar as outra coluna(s) com o mesmo nome, você pode acessar o resultados com índices númericos usando a função mysqli_fetch_row() ou adicionar apelidos.

Nota: Nomes de campos nesta função diferenciam maiúsculas e minusculas.

Nota: Esta função assimila campos NULL para o o NULL do PHP.

Parâmetros

result

Apenas para estilo de procedimento: Um identificador de um conjunto de resultados retornado por mysqli_query(), mysqli_store_result() ou mysqli_use_result().

Valor Retornado

Retorna uma matriz que corresponde a linha obtida NULL se não houverem mais linhas no conjunto de resultados.

Exemplos

Exemplo #1 Estilo orientado a objeto

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

/* check connection */
if (mysqli_connect_errno()) {
    
printf("Connect failed: %s\n"mysqli_connect_error());
    exit();
}
 
$query "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 50,5";

if (
$result $mysqli->query($query)) {

    
/* fetch associative array */
    
while ($row $result->fetch_assoc()) {
        
printf ("%s (%s)\n"$row["Name"], $row["CountryCode"]);
    }

    
/* free result set */
    
$result->close();
}

/* close connection */
$mysqli->close();
?>

Exemplo #2 Estilo de procedimento

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

/* check connection */
if (mysqli_connect_errno()) {
    
printf("Connect failed: %s\n"mysqli_connect_error());
    exit();
}

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

if (
$result mysqli_query($link$query)) {

    
/* fetch associative array */
    
while ($row mysqli_fetch_assoc($result)) {
        
printf ("%s (%s)\n"$row["Name"], $row["CountryCode"]);
    }

    
/* free result set */
    
mysqli_free_result($result);
}

/* close connection */
mysqli_close($link);
?>

O exemplo acima irá imprimir:

Pueblo (USA)
Arvada (USA)
Cape Coral (USA)
Green Bay (USA)
Santa Clara (USA)

Veja Também



add a note add a note User Contributed Notes mysqli_result::fetch_assoc
james dot phx at gmail dot com 11-Aug-2011 05:58
IMPORTANT NOTE:

If you were used to using code like this:

<?php
while(false !== ($row = mysql_fetch_assoc($result))
{
   
//...
}
?>

You must change it to this for mysqli:

<?php
while(null !== ($row = mysqli_fetch_assoc($result))
{
   
//...
}
?>

The former will cause your script to run until max_execution_time is reached.
geoffrey dot hoffman at gmail dot com 13-Nov-2009 11:43
[This describes the syntax difference in calling $result->fetch_assoc().]

<?php
/* fetch associative array works inside a while loop */
 
while ($row = $result->fetch_assoc()) {
   
printf ("%s (%s)\n", $row["Name"],  $row["CountryCode"]);
 }

 
// works

 /* fetch associative array doesn't work inside a foreach */
 
foreach($result->fetch_assoc() as $row) {
    
printf ("%s (%s)\n", $row["Name"], $row["CountryCode"]);
 }

 
// fails
?>

 
show source | credits | stats | sitemap | contact | advertising | mirror sites