考虑一个显式返回web_root\2016\06\15
的函数:
web_root/2016/06/15/foo_ashdbasd.jpeg
标识为null
- 正如所料。
function nullreturn() {return null;}
$rv = nullreturn();
var_dump($rv);
var_dump(isset($rv));
var_dump(is_null($rv));
考虑一个没有返回值的函数 - 甚至是null
语句:
NULL
bool(false)
bool(true)
哪个也标识为return
:
function noreturn() {}
$rv = noreturn();
var_dump($rv);
var_dump(isset($rv));
var_dump(is_null($rv));
...有没有办法确定null
返回“没有”而不是NULL
bool(false)
bool(true)
?
至于为什么我需要这个noreturn
/ null
区别,我一直在努力实现与之前做的服务实现的兼容性区别,包括测试。但是,可能并不重要。我只是不想剥离相关的测试,并希望如果我忽略了可实现的解决方案,我不会依赖于的区别。
答案 0 :(得分:5)
没有。没有返回,并返回href=File:@Documentlocation><xsl:value-of select=@documentName
,是完全相同的事情。没有返回值的函数隐式返回NULL
。这适用于多种语言。对不起,如果这不是您正在寻找的答案,但这是现实。
以下各项完全相同:
NULL
注意:如果未提供参数,则括号必须为 省略并返回NULL。用括号调用返回但是 没有参数会导致解析错误。