2016-07-26 7 views
2

誰かがphpの配列関数を使用していると聞いたことがあります。たとえば、array_filterをフィルタリングしたり、PHPの配列関数は、メモリアドレスを使って配列の項目を繰り返し処理します。

この理由は、フードの下では、上記のphp関数が、すべての要素に対して 'それぞれのための'または '通常の'反復を行うことと比較してメモリアドレッシングを使用するという事実になります。

私はこれに関する情報を見つけることができません。PHP source codeを見てもわかりやすい情報はありません。

もっと効率的ですか?

+1

http://php.net/manual/en/internals2.variables.intro.phpは、すべてのメモリアドレスです。そのうちのどれも、より高いレベルのコード、特に実際の "PHPスクリプト"レベルにはさらされていません。 –

+0

私の答えがあなたを助けたなら、それを受け入れることによって助けてください:)。 – NoReceipt4Panda

答えて

0

PHPでは、オブジェクトは必要に応じて自動的に割り当てられ、使用できなくなったときにガベージコレクトされ、PHPプログラマの介入なしにすべて発生します。

PHPがC言語で書かれていることを観察するのはおそらく興味深いでしょう。メモリ管理の重要な部分はCで書かれています。これは、そのようなことをするのに必要なツールを提供します。そのため、作成された言語は、プログラマが多くのことをする必要はありません。

PHPは高度な実装が可能ですが、堅牢なコンピューティングのために設計されたものではありません。

関連する問題