unset()
メモリを取得したり、いくつかの変数を宣言したり(構造に関係なく)、どこでも言語構造を使用することに興味があります。
つまり、誰かが変数を宣言するとき、それを実際にGCunset()
に残す必要があるのはいつですか?
例 1:
<?php
$buffer = array(/* over 1000 elements */);
// 1) some long code, that uses $buffer
// 2) some long code, that does not use $buffer
?>
- ポイント2
$buffer
のパフォーマンスに影響を与える可能性はありますか? - ポイント 2
unset($buffer)
に入る前に、本当にする必要がありますか (またはする必要がありますか)。
例 2:
<?php
function someFunc(/* some args */){
$buffer = new VeryLargeObject();
// 1) some actions with $buffer methods and properties
// 2) some actions without usage of $buffer
return $something;
}
?>
- ポイント 2に入る前に、私は本当に s の体内で行う必要がありますか (またはする必要があります
unset($buffer)
か) ?someFunc()
- 関数が終了するか、ステートメントを見つけるときに、s スコープ
GC
内で割り当てられたすべてのメモリ (参照とオブジェクトを含む) を解放しますか?someFunc()
return
技術的な説明に興味がありますが、コード スタイルの提案も大歓迎です。
ありがとう。