0

コードコメントの質問:

   function find($id, Application_Model $guestbook)
        {
            $result = $this->getDbTable()->find($id);
            if (0 == count($result)) {
                return;  // what is returned in functions like these?
        }
4

4 に答える 4

3

PHPのドキュメントには、「パラメータが指定されていない場合は...NULLが返されます」と記載されています。したがって、この:

return;

と同等です:

return null;
于 2013-03-26T16:18:30.527 に答える
1

何も返されません。そうは言っても、その関数の出力を変数に割り当てようとすると、その変数はになりますnull

function iDoNothing()
{
    return;
}

$returnValue = iDoNothing();
// $returnValue is now null
于 2013-03-26T16:18:32.267 に答える
0

引数のないreturnステートメントはnullを返します。

短いphpスクリプトを作成して、これを自分で試すことができます。

<?php
  echo emptyReturn();

  function emptyReturn() {
    return;
  }
?>
于 2013-03-26T16:19:30.787 に答える
0

それは実際には言語に依存しています。それらのいくつかのリストを次に示します(「値が省略されている場合は、return」列):http: //en.wikipedia.org/wiki/Return_statement

PHPの場合は、単に。を返しますNULL

C / C ++のような言語では、動作は定義されていません。つまり、ジャンク情報を返す可能性があります。これが、Javaのような言語がこれを行うことを妨げる理由です。return;void以外の関数内で実行しようとすると、Javaでコンパイラエラーが発生します。

編集:実際、そのウィキペディアのページにはこれに関する情報があまりなかったので、いくつか追加しました。

于 2013-03-26T16:31:42.523 に答える