Rud*_*die 35 php methods function return-value
是否有区别:
function someMethod( $someArg ) {
// some code
return;
}
Run Code Online (Sandbox Code Playgroud)
和
function someMethod( $someArg ) {
// some code
// no return
}
Run Code Online (Sandbox Code Playgroud)
两者都具有NULL'回报价值'.有区别吗?PHP内部的东西?性能?速度?
编辑
我问,因为在Zend框架中(在这个视频中)他们使用return;对我来说似乎(似乎)愚蠢.但是,您会认为Zend框架背后的人确实知道他们的PHP ...
use*_*291 40
PHP代码
<?php
function a() {
echo 1;
return;
}
function b() {
echo 2;
}
Run Code Online (Sandbox Code Playgroud)
生成的字节码
.FUNCTION a
ECHO 1
RETURN NULL
RETURN NULL
HANDLE_EXCEPTION
.END FUNCTION
.FUNCTION b
ECHO 2
RETURN NULL
HANDLE_EXCEPTION
.END FUNCTION
Run Code Online (Sandbox Code Playgroud)
所以显式return语句会生成一条额外的RETURN指令.否则没有区别.
从功能上来说没有什么区别,但在函数中有一个明显的退出点(返回)总是好的。一些计算机科学流派认为所有函数和方法都应该有 1 个(而且只有 1 个)出口点。
如果您将来需要添加返回值,那么如果您包含空返回值,那么代码中已经为您挑选了一个明显的点。
但正如我所说,从功能角度来看,没有太大区别。