mysql_fetch_array -- Haal een resultaat rij op als een
associatieve array, een numerieke array, of beiden
Beschrijving
array
mysql_fetch_array
( resource result [, int result_type])
Haalt
een
array
op
die
correspondeert
met
de
opgehaalde
rij
,
of
FALSE
als
er
geen
rijen
meer
zijn
.
mysql_fetch_array(
)
is
een
uitgebreide
versie
van
mysql_fetch_row(
)
.
Als
toevoeging
op
het
opslaan
van
de
data
in
numerieke
indices
van
de
resultaat
array
,
slaat
hij
de
data
ook
op
in
associatieve
indices
,
waarbij
de
veldnamen
gebruikt
worden
als
keys
.
Als
twee
of
meer
kolommmen
van
het
resultaat
dezelfde
veldnaam
hebben
heeft
de
laatst
kolom
precedentie
.
Om
toegang
te
krijgen
tot
andere
kolommen
met
dezelfde
naam
,
moet
je
de
numerieke
index
van
de
kolom
gebruiken
of
een
alias
maken
voor
de
kolom
.
Voor
gealiasde
kolommen
kun
je
geen
toegang
krijgen
tot
de
inhoud
met
de
originele
kolom
naam
(
door
'field
'
te
gebruiken
in
dit
voorbeeld
)
.
Voorbeeld
1
.
Query
met
dubbele
veldnamen
|
Belangrijk
is
het
door
te
hebben
dat
mysql_fetch_array(
)
is
niet
significant
langzamer
dan
het
gebruik
van
mysql_fetch_row(
)
,
terwijl
het
een
duidelijke
toegevoegde
waarde
heeft
.
Het
optionele
tweede
argument
result_type
in
mysql_fetch_array(
)
is
een
constante
en
kan
de
volgende
waarden
aannemen
:
MYSQL_ASSOC
,
MYSQL_NUM
,
en
MYSQL_BOTH
.
Deze
feature
werd
toegevoegd
in
PHP
3.0.7
.
MYSQL_BOTH
is
de
default
voor
deze
parameter
.
Door
MYSQL_BOTH
te
gebruiken
,
zul
je
een
array
met
zowel
associatieve
als
numerieke
indices
terug
krijgen
.
Met
MYSQL_ASSOC
krijg
je
alleen
associatieve
indices
(
zoals
bij
mysql_fetch_assoc(
)
)
,
en
met
MYSQL_NUM
krijg
je
alleen
numerieke
indices
(zoals
mysql_fetch_row(
)
)
.
Voorbeeld
2
.
mysql_fetch_array
met
MYSQL_NUM
?php
mysql_connect(
"localhost"
,
"mysql_user"
,
"mysql_password"
)
or
die("Kan
geen
verbinding
maken
:
"
.
mysql_error())
;
mysql_select_db("mydb")
;
$result
=
mysql_query("SELECT
id
,
name
FROM
mytable")
;
while
($row
=
mysql_fetch_array($result
,
MYSQL_NUM)
)
{
printf
("ID
:
%s
Name
:
%s"
,
$row[0]
,
$row[1])
;
}
mysql_free_result($result)
;
?
|
|
Voorbeeld
3
.
mysql_fetch_array
met
MYSQL_ASSOC
?php
mysql_connect(
"localhost"
,
"mysql_user"
,
"mysql_password"
)
or
die("Kan
geen
verbinding
maken
:
"
.
mysql_error())
;
mysql_select_db("mydb")
;
$result
=
mysql_query("SELECT
id
,
name
FROM
mytable")
;
while
($row
=
mysql_fetch_array($result
,
MYSQL_ASSOC)
)
{
printf
("ID
:
%s
Name
:
%s"
,
$row["id"]
,
$row["name"])
;
}
mysql_free_result($result)
;
?
|
|
Voorbeeld
4
.
mysql_fetch_array
met
MYSQL_BOTH
?php
mysql_connect(
"localhost"
,
"mysql_user"
,
"mysql_password"
)
or
die("Kan
geen
verbinding
maken
:
"
.
mysql_error())
;
mysql_select_db("mydb")
;
$result
=
mysql_query("SELECT
id
,
name
FROM
mytable")
;
while
($row
=
mysql_fetch_array($result
,
MYSQL_BOTH)
)
{
printf
("ID
:
%s
Name
:
%s"
,
$row[0]
,
$row["name"])
;
}
mysql_free_result($result)
;
?
|
|
Voor
verder
details
,
zie
ook
mysql_fetch_row(
)
en
mysql_fetch_assoc(
)
.