1

オブジェクトのvar_dumpの角かっこで囲まれた整数の名前は何ですか。そして、どうすればPHPでアクセスできますか?

次の例では(3)を参照しています。

    object(SimpleXMLElement)#18 (3) {
       ["ID"]=>
      string(3) "xx"
       ["Name"]=>
       string(25) "xx"
       ["Date"]=>
       string(10) "xx"
    }
4

3 に答える 3

2

これは、オブジェクトのプロパティの数です。これを数えるには、オブジェクトを配列にキャストして、次を使用できますcount()

$number = count((array)$object);

編集:私は小さなテストを行いました(コードパッドを参照get_object_vars())。これは、配列のキャストやvar_dumpが行うときに、配列のキャストがプライベートプロパティをカウントしないため、他の人が言及したように使用する代わりに、配列へのキャストが実行したいことを証明しますこれらを数えます。

于 2012-06-01T11:53:07.673 に答える
0

これはそのオブジェクトのパブリックプロパティの数であり、直接アクセスすることはできません

于 2012-06-01T11:51:29.333 に答える
0

オブジェクトのvar_dumpの角かっこで囲まれた整数の名前は何ですか。そして、どうすればPHPでアクセスできますか?

次の例では(3)を参照しています。

それはそれが持っているパブリックメンバーの数です(すなわち、ID、名前と日付)。その番号を知りたい場合は、次を使用できますcount( get_object_vars( $object ) )

<?php

$foo = new stdClass;
$foo->foo = 42;
$foo->bar = 42;
$foo->baz = 42;

var_dump( count( get_object_vars( $foo ) ) );
于 2012-06-01T11:53:41.773 に答える