No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Adquiere por un año todos los cursos, escuelas y certificados por un precio especial.

Antes: $249

Currency
$219/año

Paga en 4 cuotas sin intereses

Paga en 4 cuotas sin intereses
Comprar ahora

Termina en:

1D
11H
23M
23S

Argumentos a profundidad

19/25
Recursos

Aportes 5

Preguntas 1

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

o inicia sesión.

Arrays como parametros opcional

existe la funcionalidad de poder colocar arrays como argumentos

Trailing commas:

Los trailing commas son comas que van el apartado de los parametros de tu funcion, lo que destaca es que estos parametros pueden terminar con coma sin marcar error. Esto se encuentra en muchos lenguajes

Recibir clases como parametros (no instancias sino la inicializacion de una(solo php > 8):

puedes mandar clases como argumentos a tu funcion, esto puede ser muy util para funciones con un objetivo muy general.

Orden de los parametros:

los parametros obligatorios deben ir primero y despues los parametros opcionales

La asignacion de clases en parametros solo funciona en versiones 8.1.0 en adelante.

<?php

// Parámetros por defecto con array.
function sumar_edades($edades = array(13, 17, 35)) {
  return array_sum($edades);
}

echo sumar_edades(array(5, 10, 15)) . PHP_EOL;

/**
 * Trailing commas implementado en PHP 8
 *
 * NOTA: En versiones anteriores a PHP 8
 * esto generará un error de sintaxis.
 */
function multiplicar($n1 = 1, $n2 = 2, $n3 = 3,) {
  return $n1 * $n2 * $n3;
}

echo multiplicar() . PHP_EOL;

class UnaClaseRandom {}
class OtraClaseRandom {}

// Parámetros por defecto con clases.
function receive_a_class($class = new UnaClaseRandom) {
    echo $class::class;
}

echo receive_a_class(new OtraClaseRandom) . PHP_EOL;

// Orden de los parámetros
function suma($n1, $n2 = 8)
{
    return $n1 + $n2;
}

echo suma(8) . PHP_EOL;

buenos tips! gracias

Codigo de la clase:

<?php
/* function sumar_edades($edades=array(13,14,35)){
    return array_sum($edades);
}

echo sumar_edades();

echo "\n";
 */

/*  function multiplicar(   $n1=1,
 $n2=2,
 $n3=3,){
    return $n1*$n2*$n3;     
 }

 echo multiplicar();
 echo "\n";
 */

/* class UnaClaseRandom {}
class OtraClaseRandom {}

// Parámetros por defecto con clases.
function receive_a_class($class = new UnaClaseRandom) {
    echo $class::class;
} */
//Incorrecto
/* function suma($n1=2,$n2){
    return $n1 + $n2;
} */
//Correcto
/* function suma($n2,$n1=2){
    return $n1 + $n2;
} */

echo suma(8,7);
echo "\n";

?>