首页 > PHP 阅读:634

PHP return关键字(函数返回值)

PHP 中,函数的返回值可以是任意类型的数据;当然,函数也可以不返回值。函数使用 return 关键字返回数据,函数遇到 return 关键字会立即终止执行。

示例代码如下:
<?php
function square($num){
    return $num * $num;
}
echo square(4);  //outputs'16'.
?>
以上代码的运行结果为:

16

函数只能有一个返回值

函数不能返回多个值,但可以通过返回一个数组来得到类似的效果。代码如下:
<?php
function small_numbers(){
    return array(0, 1, 2);
}
list($zero, $one, $two) = small_numbers();
echo $zero . $one . $two;
?>
代码执行结果为:

012

$zero $one $two 的值分别是0、1、2。

返回值类型声明

在 PHP 7 中函数增加了返回值的类型声明。和参数类型声明类似,在非严格模式下,PHP 将会尝试将返回值类型转换成期望得到的值类型,但在严格模式下,函数的返回值必须与声明的返回类型一致。

示例如下:
<?php
function sum($a, $b):float{
    return $a + $b;
}
var_dump( sum(1,2) );
?>
以上程序会输出:

float(3)


在严格模式下的代码如下:
<?php
declare(strict_types=1);
function sum($a, $b):int{
    return $a + $b;
}
var_dump( sum(1,2) );
var_dump( sum(1,2.1) );
?>
以上程序的执行结果为:

int(3)
Fatal error: Uncaught TypeError: Return value of sum() must be of the type integer, float returned in /Library/WebServer/Documents/book/str.php:281 Stack trace: #0 /Library/WebServer/Documents/book/str.php(284): sum(1, 2.1) #1 {main} thrown in /Library/WebServer/Documents/book/str.php on line 281

爱面试的程序媛,一个分享面试经验的公众号。跟着站长一起学习,每天都有进步。

通俗易懂,深入浅出,定时分享程序员面试的那点事。

面试如何造火箭?工作如何拧螺丝?都在这个公号哦。

扫描二维码关注公众号,免费领取价值 1000 元的求职面试资料(限时免费)!

当你决定关注「爱面试的程序媛」,你已然超越了90%的程序员!

爱面试的程序媛二维码
微信扫描二维码关注