0

以前にここからコード スニペットを取得し、最初にコピーして貼り付けたこの構文に興味がありました。

function create(array &$data){
  #blah blah...
}

それ自体でarray &$dataはなく、その目的は何ですか? &$data言い換えれば、ステートメントarrayはこのコンテキストで何をしますか?

4

1 に答える 1

4

これはタイプヒンティングと呼ばれます:

PHP 5 では、型ヒントが導入されました。関数は、パラメーターをオブジェクト (関数プロトタイプでクラスの名前を指定することにより)、インターフェース、配列 (PHP 5.1 以降)、または呼び出し可能 (PHP 5.4 以降) にすることができるようになりました。ただし、NULL がデフォルトのパラメータ値として使用されている場合は、以降の呼び出しの引数として許可されます。

クラスまたはインターフェイスが型ヒントとして指定されている場合、そのすべての子または実装も許可されます。

型ヒントは、int や string などのスカラー型では使用できません。特性も許可されていません。

于 2013-04-10T17:54:44.033 に答える