2011-01-17 2 views
1

ちょうど好奇心のために、私はdeleteをPHP構文の強調表示でエディタに入力し、それを既知のキーワードカラーで置きました。
unset()があります。リファレンスで使用すると、ガベージコレクション、リソース解放、またはPHPがフードの中で何を行うのかを起動すると仮定しますが、deleteは何をしますか?
参照変数にdelete $refを入力しようとすると、次のエラーが表示されます。Parse error: syntax error, unexpected T_VARIABLE in /... on line ...PHPの `delete`キーワードは、C++やそれに類することと同じですか?

答えて

9

エディタが混乱します。 PHPにはdeleteというキーワードはありません。

manualを見ると、実際にはunlink()またはunsetを探している人のための "ダミーのマニュアルエントリ"という意味があります。参照変数を取り除いた場合、unsetは同じことをしますが、その特定の参照のみを破棄することはありません。

また、関数プロトタイプにはvoid delete (void)と表示されますが、実際にはそのような関数は存在しません。

+0

... PHPの「未設定()」関数についての話しますプログラミング言語のドキュメントエディタは、他のプログラマを追いかけています... – BoltClock

+0

ああ、あなたが正しく、オブジェクトが破壊されていない、参照を解除するだけです。 – Petruza

+0

@Petruza:参照をすべて削除するか、スクリプトがシャットダウンしているときにGCedを取得します。 – BoltClock

1

Cに「削除」の意味によると、あなたは人間の正気をしても急落するように設定されている知っている、サイドノートでは

unset($var); 
// or 
unset($var1, $var2,...);
関連する問題