1

xdebug を使用してコードをトレースし、使用しているメモリの量を確認していますが、トレースの開始時には約560224バイトのメモリを使用しています。これは正常ですか?これは、コードが実行される前です。

編集: 明確にする必要がありました。これは私が最適化しようとしているものではありません。ふと気がついたので説明を求めました。

4

1 に答える 1

2
# php -r 'var_dump(memory_get_usage());'
int(75880)
# php -r 'var_dump(memory_get_usage());'
int(75880)
# php -r 'var_dump(memory_get_usage());'
int(75880)

ここで興味深い点が 2 つあります。必要最小限の「スクリプト」は、コマンド ラインで 76k を使用しており、一貫してそうしています。

# php -r 'var_dump(memory_get_usage()); echo "";'
int(76016)
# php -r 'var_dump(memory_get_usage()); echo ""; echo "";'
int(76160)

コードを追加すると、メモリ使用量が増加します。当然のことながら、解析されたコードはどこかに移動する必要があります。

つまり、あなたが目にしているメモリ使用量は、すべてのコードと、開始時にビルドされるその他のものです。コードの最初の行が実行されるまでに、PHP はすべてのコードではないにしても、すでに多くのコードを解析していることを思い出してください。(動的インクルードまたは自動ロードにより、後で解析が発生する可能性があります)

これを削減しようとしても、概して無駄かもしれませんが、不要なインクルードを避けることを検討することをお勧めします。とにかくそれは良い考えです。

于 2010-01-22T03:06:11.977 に答える