質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

2回答

1697閲覧

PHPはどのように変数の管理、保存しているのですか?

sankaku

総合スコア26

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

1クリップ

投稿2014/08/26 07:05

PHPはどのように変数の管理と保存をしているのですか?

PHPでは、同じ変数を使って整数、文字列、ブール、配列とか保存することが出来ます。

しかしPHPがどうやって変数を管理と保存しているのか分かりません。インタプリタが裏で C変数を作成して扱っているのでしょうか。

分かる方いますか?宜しくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

ご質問に対する正確な回答はpotetoさんの回答になるかと思います。
PHPは余り組まないのですが、変数に代入する値/文字列から変数の型を自動判断するのはPHPのインタープリタの機能になります。そしてPHPインタープリタはC言語で開発されています。
変数をVariant型で定義する手法はjavascript,aspでも使われています。私は型指定するタイプなんですが。

投稿2014/08/28 12:26

BlueMoon

総合スコア1339

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sankaku

2014/08/29 01:35

回答ありがとうございました!理解しやすいように教えていただきありがとうございましたm(_ _)m
guest

0

PHPマニュアルより抜粋

PHP 変数は「zval」と呼ばれるコンテナに保管されます。> zval コンテナには、変数の型と値の他に、情報の追加ビットを2つ含みます。1つ目は「is_ref」と呼ばれ、変数が「参照集合」の一部かどうかを示すブール値です。このビットによって、通常の変数と参照を区別する方法を PHP エンジンが知ります。
&演算子によって作成されるように、PHP ではユーザーランドを参照できるので、zval コンテナもメモリー使用状況を最適化するための内部的な参照カウント機構を持ちます。
追加情報の2つ目は「refcount」と呼ばれ、この1つの zval コンテナをどれだけ多くの変数名(シンボルとも呼ばれます)が指すかを含みます。シンボルは全てシンボルテーブルに保管され、スコープごとにシンボルテーブルの1つがあります。
関数やメソッドごとのスコープばかりではなく、メインスクリプト用のスコープ
(すなわち、ブラウザによってリクエストされたスクリプト)があります。

下記マニュアル
http://www.php.net/manual/ja/features.gc.refcounting-basics.php

投稿2014/08/27 07:30

poteto

総合スコア142

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問