Manual do PHP
Anterior |  | Próxima

# mysql_fetch_assoc

(PHP 4 >= 4.0.3, PHP 5)

mysql_fetch_assoc -- Busca o resultado de uma linha e o coloca numa matriz associativa

## Descrição

array mysql_fetch_assoc ( resource result )

Retorna uma matriz associativa que corresponde a linha ou `FALSE` se não houverem mais linhas.

mysql_fetch_assoc() é equivalente a chamar mysql_fetch_array() com MYSQL_ASSOC para o segundo parâmetro, que é opcional. Somente retorna uma matriz associativa. Este é o jeito que mysql_fetch_array() funcionava originalmente. Se você precisa dos índices numéricos assim como o associativo, use mysql_fetch_array().

Se duas ou mais colunas do resultado tiverem o mesmo nome do campo, a ultima coluna terá precedência. Para acessar as outras coluna(s) com o mesmo nome, você deve usar o índice numérico da coluna usando mysql_fetch_row() ou fazer um apelido para a coluna. Veja o exemplo em mysql_fetch_array() uma descrição para apelidos.

Uma coisa importante para notar é que usar mysql_fetch_assoc() não é significativamente mais lenta do que usar mysql_fetch_row(), enquanto produz um resultado melhor de usar.

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

Exemplo 1. mysql_fetch_assoc()
`<<?php $conn = mysql_connect("localhost", "mysql_user", "mysql_password"); if (!$conn) { echo "Não foi possível conectar com o banco de dados: " . mysql_error(); exit; } if (!mysql_select_db("mydbname")) { echo "Não foi possível selecionar mydbname: " . mysql_error(); exit; } $sql = "SELECT id as userid, fullname, userstatus FROM sometable WHERE userstatus = 1"; $result = mysql_query($sql); if (!$result) { echo "Não foi possível executar a consulta ($sql) apartir do banco de dados: " . mysql_error(); exit; } if (mysql_num_rows($result) == 0) { echo "Não foram encontradas linhas, nada para mostrar, então estou saindo"; exit; } // Enquanto existir uma linha de dados, coloca esta linha em $row como uma matriz associativa // Nota: Se você esta esperando apenas uma linha, nõa é necessário usar um loop // Note: Se você colocar extract($row); dentro do loop a seguir, você então // criará $userid, $fullname, e $userstatus while ($row = mysql_fetch_assoc($result)) { echo $row["userid"]; echo $row["fullname"]; echo $row["userstatus"]; } mysql_free_result($result); ?>`

Veja também mysql_fetch_row(), mysql_fetch_array() e mysql_query().

Anterior | Principal | Próxima
mysql_fetch_array | Acima | mysql_fetch_field