php+方法的返回值,PHP方法的返回值示例详解

本文探讨了PHP中函数返回值类型声明的重要性,如bool、array和类类型,以及void的使用。通过实例展示了类型声明如何避免运行时错误,并预示PHP8中的新特性。了解类型声明如何增强代码质量和未来编译器支持。
摘要由CSDN通过智能技术生成

function testE($a, $b) : bool

{

if($a+$b == 3){

return TRUE;

}else{

return NULL;

}

}

var_dump(testE(1, 2)); https:// true

var_dump(testE(1.1, 2.2)); https://TypeError: Return value of testE() must be of the type bool, null returned

如上例所示,如果返回值不是bool类型,那么将直接报TypeError的错误。

那么定义了返回值类型声明有什么好处呢?我们在 PHP方法参数的那点事儿 有介绍过类型声明的好处,这里就不过多赘述了,不管是参数类型声明还是返回值类型声明,都是一样的。

function testF($a, $b): array

{

return [

$a + $b,

$a * $b,

];

}

var_dump(testF(1, 2)); https:// [3, 2]

interface iA{

}

class A implements iA

{}

class B extends A

{

public $b = 'call me B!';

}

function testG(): A

{

return new B();

}

function testH(): B

{

return new B();

}

function testI(): iA

{

return new B();

}

var_dump(testG()); https:// B的实例

var_dump(testH()); https:// B的实例

var_dump(testI()); https:// B的实例

同样,数组和类类型都是可以声明定义的。不过除此之外,返回值声明还可以定义void。它的作用其实就是声明返回值为NULL,不能直接写:NULL,而只能用:void来进行声明。

function testJ(): void

{

echo "testJ";

https:// return 1;

}

var_dump(testJ());

这时,如果尝试进行任何的return返回,都会直接报错:Fatal error: A void function must not return a value。

总结

我们可以看到,PHP在不断的发展中一直在吸取其他语言中的优秀特性。很明显,添加这些类型声明的目的就是为了将来的编译器做准备的。这也是PHP8的一个重要特性,让我们拭目以待吧!

测试代码:

https:https://github.com/zhangyue0503/dev-blog/blob/master/php/201911/source/PHP方法的返回值.php

参考文档:

https:https://www.php.net/manual/zh...

457929d81ed3ae876b1a2ed574c030e7.png

原文链接:http://www.yuepc.com/a/3455.html

http://www.yuepc.com 为 “沈一博客” 唯一官方服务平台,请勿相信其他任何渠道。

标签:

相关文章

评论列表

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值