Declaraciones de tipo de devolución en PHP 7

Declaraciones de tipo de devolución en PHP 7

PHP

PHP 7 ha añadido soporte para las declaraciones de tipo de devolución. Esto es, podemos establecer que tipo de dato devolverá una función.

Están disponibles los mismos tipos para las declaraciones de tipo de devolución que para las declaraciones de tipo de argumento:

Ejemplos de declaración de tipo de devolución

Ejemplo de una función que retorna un string

Nos sirve para forzar que la función retorne un valor string.

	function retornaCadena($valor1, $valor2, $valor3):string{
		return $valor1+$valor2+$valor3;
	}

	$res = retornaCadena(2, '3', 1.2);
	var_dump($res); // string(3) "6.2" 
	

Ejemplo de una función que retorna un número entero

Nos sirve para forzar que la función retorne un valor integer.

	function retornaCadena($valor1, $valor2, $valor3):int{
		return $valor1+$valor2+$valor3;
	}

	$res = retornaCadena(2, '3', 1.2);
	var_dump($res); // int(6)  
	

Ejemplo de una función que retorna un decimal

Nos sirve para forzar que la función retorne un valor float.

	function retornaCadena($valor1, $valor2, $valor3):float{
		return $valor1+$valor2+$valor3;
	}

	$res = retornaCadena(2, '3', 1.2);
	var_dump($res); // float(6.2)
	

Ejemplos sin utilizar la declaración de tipo de devolución

Alternativa para versiones anteriores de PHP

Si la versión de PH con la que trabajamos es menor a la 7, podremos forzar el tipo de dato que queremos devolver de la siguiente forma:

	function retornaCadena($valor1, $valor2, $valor3){
		$res = $valor1+$valor2+$valor3;
		settype($res, 'int');
		return $res;
	}

	$res = retornaCadena(2, '3', 1.2);
	var_dump($res); //int(6) 
	

En el ejemplo anterior, utilizamos la función settype para establecer el tipo de dato que queremos retornar.

Leave a reply