ホームページ > バックエンド開発 > PHPチュートリアル > 内部メモリスタックでの PHP オブジェクトの割り当て

内部メモリスタックでの PHP オブジェクトの割り当て

WBOY
リリース: 2016-06-13 12:28:39
オリジナル
1054 人が閲覧しました

メモリスタック内の PHP オブジェクトの割り当て

メモリスタック内の PHP オブジェクトの割り当て

PHP のオブジェクトも整数や浮動小数点型と同様にデータ クラスであり、すべて使用されます。では、オブジェクトはどのようにしてメモリに反映されるのでしょうか。メモリは論理的に 4 つのセグメント (スタック領域セグメント、ヒープ領域セグメント、コード セグメント、および初期化静的セグメント) に分割され、プログラム内の異なる宣言は異なるメモリ セグメントに配置されます。

データセグメントは、通常、静的変数や定数など、プログラム内で初期化されていて0ではないグローバル変数を指します。

コードセグメント/テキストセグメント 通常は、使用されるメモリ領域を指します関数やメソッドなどのプログラムの実行コードを格納します。

スタック領域セグメントは、整数など、同じ領域長で占有する領域が小さいデータ型が格納される場所です。 、100、1000、10000、100000 などはメモリ内で同じ長さのスペースを占有し、すべて 64 ビットと 4 バイトです。

では、データ長は固定されておらず、多くのスペースを占めるデータ型はメモリのどのセグメントに配置されるのでしょうか?このようなデータはヒープ メモリに配置されます。

スタックメモリは直接アクセスできますが、ヒープメモリは直接アクセスできないメモリです。このオブジェクトの場合、それは大きなデータ型であり、可変長の領域を占有するため、オブジェクトはヒープに配置されますが、オブジェクト名を介して使用できるように、オブジェクト名はスタックに配置されます。 。 物体。 $p1 はインスタンス化するオブジェクトの名前です。同様に、$p2 と $p3 もインスタンス化するオブジェクトの名前です。上記のコードはインスタンス化するのと同じです。 3 人の間にはつながりはありません。それは、全員が名前、性別、年齢の属性を持ち、クラス内にいる限り、メンバーの特性を持っていることを意味します。表示されるメンバー メソッドはインスタンス化されたオブジェクトに含まれます。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート