ホームページ >バックエンド開発 >PHPチュートリアル >オブジェクトは可変性をサポートしていますか?

オブジェクトは可変性をサポートしていますか?

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBオリジナル
2016-06-23 14:06:46806ブラウズ

質問: オブジェクトは可変性をサポートしていますか?


ディスカッションへの返信 (解決策)

オブジェクトは可変性をサポートします

オブジェクトは可変性をサポートします
いいえ
クラス名は可変性をサポートします
が、オブジェクトは単に可変ではありません
可変変数とはこういうものですか使った?

<?php  class obj{    public $test='测试';  }  $obj2=new obj;  $obj3="obj2";  var_dump($obj3->test);    
string(4) "テスト"

可変変数の使い方はこんな感じでしょうか? PHP コード?1234567class obj{ public $test='test' } $obj2=new obj; $obj3->test); ありがとうございますバージョン 主よ、私はまだよく理解していません...
変数の可変性については知っています。1 つの $ は変数そのものの値を表し、2 つの $ は変数の値を変数として扱うことを表します。

さらに、関数とクラスの変数は名前として 1 文字を使用しますが、なぜオブジェクトの前に $. を付ける必要があるのでしょうか。



それから、自分で考えてみてください
$obj2=new obj
var_dump; $obj2->test); 結果はどうなりましたか?

次に、

$obj3="obj2";
var_dump($$obj3->test);
もう 1 つあるはずです


それから、自分で考えてください
$obj2=new obj; obj2 ->test);
結果はどうなるでしょうか?

次に

$obj3="obj2";

var_dump($$obj3->test);
$ がもう 1 つあるはずです

わかりました
$ がある場合、PHP はそれ自体を次のように扱います。 $ オブジェクトの場合、$obj3 を使用して独自のプロパティを取得しますが、$obj3 はオブジェクトではなく変数であることが後でわかり、変数はオブジェクトのプロパティに直接アクセスできないため、その前に $ を追加する必要があります。その後、PHP で $obj2 が単なる変数ではなく有名なオブジェクトであることが判明したので、この時点では $obj3 がオブジェクトであることがわかり、それを取得します。
ははは
私が正しく理解しているかどうかはわかりません...
私は自分で結論を出す勇気を持ったことはありません。 。 。

正しく理解できました!

モデレータの方々、IT 出稼ぎ労働者の方々、CSDN の皆様、そしてフォーラムの考案者に感謝します。私に再び光を見出し、理由を見つけさせてくれたのは皆さんのおかげです。生きること

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。