Parámetros de las funciones
La
información
puede
suministrarse
a
las
funciones
mediante
la
lista
de
parámetros
,
una
lista
de
variables
y
/
o
constantes
separadas
por
comas
.
PHP
soporta
pasar
parámetros
por
valor
(
el
comportamiento
por
defecto
)
,
por
referencia
,
y
parámetros
por
defecto
.
Listas
de
longitud
variable
de
parámetros
sólo
están
soportadas
en
PHP4
y
posteriores
;
ver
Listas
de
longitud
variable
de
parámetros
y
la
referencia
de
las
funciones
func_num_args(
)
,
func_get_arg(
)
,
y
func_get_args(
)
para
más
información
.
Un
efecto
similar
puede
conseguirse
en
PHP3
pasando
un
array
de
parámetros
a
la
función
:
Pasar parámetros por referencia
Por
defecto
,
los
parámetros
de
una
función
se
pasan
por
valor
(
de
manera
que
si
cambias
el
valor
del
argumento
dentro
de
la
función
,
no
se
ve
modificado
fuera
de
ella
)
.
Si
deseas
permitir
a
una
función
modificar
sus
parámetros
,
debes
pasarlos
por
referencia
.
Si
quieres
que
un
parámetro
de
una
función
siempre
se
pase
por
referencia
,
puedes
anteponer
un
ampersand
(
)
al
nombre
del
parámetro
en
la
definición
de
la
función
:
Si
deseas
pasar
una
variable
por
referencia
a
una
función
que
no
toma
el
parámetro
por
referencia
por
defecto
,
puedes
anteponer
un
ampersand
al
nombre
del
parámetro
en
la
llamada
a
la
función
:
Parámetros por defecto
Una
función
puede
definir
valores
por
defecto
para
los
parámetros
escalares
estilo
C++
:
La
salida
del
fragmento
anterior
es
:
Hacer
una
taza
de
cappucino
.
Hacer
una
taza
de
espresso
.
|
El
valor
por
defecto
tiene
que
ser
una
expresión
constante
,
y
no
una
variable
o
miembro
de
una
clase
.
En
PHP
4.0
también
es
posible
especificar
unset
como
parámetro
por
defecto
.
Esto
significa
que
el
argumento
no
tomará
ningún
valor
en
absoluto
si
el
valor
no
es
suministrado
.
Destacar
que
cuando
se
usan
parámetros
por
defecto
,
estos
tienen
que
estar
a
la
derecha
de
cualquier
parámetro
sin
valor
por
defecto
;
de
otra
manera
las
cosas
no
funcionarán
de
la
forma
esperada
.
Considera
el
siguiente
fragmento
de
código
:
La
salida
del
ejemplo
anterior
es
:
Missing
argument
2
in
call
to
makeyogurt(
)
in
/
usr
/
local
/
etc
/
httpd
/
htdocs
/
php3test
/
functest.html
on
line
41
Haciendo
un
bol
de
mora
.
|
Y
ahora
,
compáralo
con
:
La
salida
de
este
ejemplo
es
:
Haciendo
un
bol
de
acidophilus
mora
.
|
Lista de longitud variable de parámetros
PHP4
soporta
las
listas
de
longitud
variable
de
parámetros
en
las
funciones
definidas
por
el
usuario
.
Es
realmente
fácil
,
usando
las
funciones
func_num_args(
)
,
func_get_arg(
)
,
y
func_get_args(
)
.
No
necesita
de
ninguna
sintaxis
especial
,
y
las
listas
de
parámetros
pueden
ser
escritas
en
la
llamada
a
la
función
y
se
comportarán
de
la
manera
esperada
.