Forum und email

mysql_fetch_array

(PHP 4, PHP 5, PECL mysql:1.0)

mysql_fetch_array — Skaber et resultat som et associeret array, et numerisk, eller begge dele.

Beskrivelse

array mysql_fetch_array ( resource $result [, int $result_type ] )

Returnerer et array, i henhold til de returnerede rækker, og flytter den interne data pointer fremad.

Parameterliste

result

The result resource that is being evaluated. This result comes from a call to mysql_query().

result_type

Typen af array der skal hentes. Det er en konstant, og kan have følgende værdier: MYSQL_ASSOC, MYSQL_NUM, og standard værdien MYSQL_BOTH.

Returneringsværdier

Returnerer et array, i henhold til de hentede rækker, eller FALSE hvis der ikke er flere rækker. Typen af det returnerede array afhænger af hvordan result_type er defineret. Ved brug af MYSQL_BOTH (standard), vil du få et array med både associerede og nummer idexes. Ved brug af MYSQL_ASSOC, får du kun associerede indexes (som mysql_fetch_assoc() fungerer), ved brug af MYSQL_NUM, får du nummeriske indexes (som mysql_fetch_row() fungerer).

Hvis to kollonner i samme resultat, har samme felt navn, vil den sidste tage forhåndsret. For adgang til den anden/de andre kollonner, med samme navn, skal du bruge den nummeriske index værdi, eller lave et alias til kollonnen. Ved at aliasere kollonnen, kan du ikke tilgå, indholdet, med det originale kollonne navn.

Eksempler

Example#1 Forespørgsel, med aliaserede dupplikerede feltnavne

SELECT table1.field AS foo, table2.field AS bar FROM table1, table2

Example#2 mysql_affected_array() med MYSQL_NUM

<?php
mysql_connect
("localhost""mysql_bruger""mysql_kode") or
    die(
"Kunne ikke forbinde: " mysql_error());
mysql_select_db("mydb");

$result mysql_query("SELECT id, name FROM mytable");

while (
$row mysql_fetch_array($resultMYSQL_NUM)) {
    
printf("ID: %s  Navn: %s"$row[0], $row[1]);  
}

mysql_free_result($result);
?>

Example#3 mysql_fetch_array() med MYSQL_ASSOC

<?php
mysql_connect
("localhost""mysql_bruger""mysql_kode") or
    die(
"Kunne ikke forbinde: " mysql_error());
mysql_select_db("mydb");

$result mysql_query("SELECT id, name FROM mytable");

while (
$row mysql_fetch_array($resultMYSQL_ASSOC)) {
    
printf("ID: %s  Navn: %s"$row["id"], $row["name"]);
}

mysql_free_result($result);
?>

Example#4 mysql_affected_array() med MYSQL_BOTH

<?php
mysql_connect
("localhost""mysql_bruger""mysql_kode") or
    die(
"Kunne ikke forbinde: " mysql_error());
mysql_select_db("mydb");

$result mysql_query("SELECT id, name FROM mytable");

while (
$row mysql_fetch_array($resultMYSQL_BOTH)) {
    
printf ("ID: %s  Navn: %s"$row[0], $row["name"]);
}

mysql_free_result($result);
?>

Notes

Note: Ydeævne En vigtig ting at husle er at mysql_fetch_array() er ikke mærkbart langsommere end at bruge mysql_fetch_row(), samtidig med det giver en beskrivende værdi.

Note: Feltnavne returneret af denne funktion er case-sensitive.

Note: Denne funktion sætter NULL felter til PHP NULL værdien.