Language agnostic 什么是';空的';返回
守则注释中的问题:Language agnostic 什么是';空的';返回,language-agnostic,return,Language Agnostic,Return,守则注释中的问题: function find($id, Application_Model $guestbook) { $result = $this->getDbTable()->find($id); if (0 == count($result)) { return; // what is returned in functions like these? }
function find($id, Application_Model $guestbook)
{
$result = $this->getDbTable()->find($id);
if (0 == count($result)) {
return; // what is returned in functions like these?
}
说明“如果未提供任何参数…将返回NULL”。因此:
相当于:
return null;
说明“如果未提供任何参数…将返回NULL”。因此:
相当于:
return null;
它不会返回任何东西。也就是说,如果您尝试将该函数的输出分配给一个变量,那么该变量将为
null
function iDoNothing()
{
return;
}
$returnValue = iDoNothing();
// $returnValue is now null
它不会返回任何东西。也就是说,如果您尝试将该函数的输出分配给一个变量,那么该变量将为
null
function iDoNothing()
{
return;
}
$returnValue = iDoNothing();
// $returnValue is now null
不带参数的Return语句返回null 您可以通过创建一个简短的php脚本来尝试:
<?php
echo emptyReturn();
function emptyReturn() {
return;
}
?>
不带参数的返回语句返回null 您可以通过创建一个简短的php脚本来尝试:
<?php
echo emptyReturn();
function emptyReturn() {
return;
}
?>
它实际上取决于语言。以下是其中几个的列表(“如果省略了值,则返回”列): 对于PHP,它只返回
NULL
在像C/C++这样的语言中,行为是未定义的。这意味着它可能会返回垃圾信息。
这就是像Java这样的语言阻止您这样做的原因。如果您试图返回,Java将给您一个编译器错误代码>在非void函数中
编辑:事实上,维基百科页面上并没有太多关于这方面的信息,所以我添加了一些 这实际上取决于语言。以下是其中几个的列表(“如果省略了值,则返回”列):
对于PHP,它只返回NULL
在像C/C++这样的语言中,行为是未定义的。这意味着它可能会返回垃圾信息。
这就是像Java这样的语言阻止您这样做的原因。如果您试图返回,Java将给您一个编译器错误代码>在非void函数中
编辑:事实上,维基百科页面上并没有太多关于这方面的信息,所以我添加了一些 “理论”是一种类似于PHP的编程语言吗?@Barmar看起来这个标签通常用来指代CS理论:@Sancho,这表明他在寻找一个语言不可知的答案,而这个答案在这个问题上并不存在。是“理论”吗一种类似于PHP的编程语言?@Barmar看起来这个标签通常用来指代CS理论:@Sancho,这表明他在寻找一个语言不可知的答案,这个问题实际上并不存在。var_dump()更适合这里,echo或print也不适合你想要实现的目标。应该使用print_r()代码>,var\u dump()
或var\u export()
。啊,是的,我同意你们两个。我是从javascript调用的,这使得我的php本身没有多大帮助。var_dump()更适合这里,echo或print也不适合您试图实现的目标。应该使用print_r()代码>,var\u dump()
或var\u export()
。啊,是的,我同意你们两个。我是从javascript调用的,这使得我的php本身没有多大帮助。