suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Wie greife ich nach der Konvertierung eines PHP-Arrays in ein Objekt mithilfe eines Objekts auf Daten zu?

    $fields = M('fields') -> select();
    $aa = json_encode($fields);
    $bb = json_decode($aa);
    
    $bb -> 0;//获取不到任何数据,应该怎么写呢
    
    print_r($bb);
    结果为:

Array
(

[0] => stdClass Object
    (
        [fields_id] => 1
        [name] => 勘探
    )

[1] => stdClass Object
    (
        [fields_id] => 2
        [name] => 钻完井
    )

[2] => stdClass Object
    (
        [fields_id] => 3
        [name] => 采油采气
    )

[3] => stdClass Object
    (
        [fields_id] => 4
        [name] => 油气储运
    )

[4] => stdClass Object
    (
        [fields_id] => 5
        [name] => 地面工程
    )

[5] => stdClass Object
    (
        [fields_id] => 6
        [name] => 销售炼化
    )

[6] => stdClass Object
    (
        [fields_id] => 7
        [name] => 新能源
    )

[7] => stdClass Object
    (
        [fields_id] => 8
        [name] => 综合
    )

)

Wie bekomme ich die Daten hinein? Fragen Sie nach einer Möglichkeit zum Schreiben. Wie erhält man beispielsweise alle Daten unter [0]? Was wäre, wenn wir den [Namen] unter [0]
nehmen würden?

给我你的怀抱给我你的怀抱2812 Tage vor494

Antworte allen(3)Ich werde antworten

  • phpcn_u1582

    phpcn_u15822017-05-16 13:17:05

    楼上稍微有点问题,换我这样: $bb[0]->

    你或许是想这样用:json_decode($aa, true);

    在编程的时候注意查文档:

    API

    json_decode

    (PHP 5 >= 5.2.0, PECL json >= 1.2.0, PHP 7)

    json_decode — 对 JSON 格式的字符串进行解码

    说明

    mixed json_decode ( string $json [, bool $assoc = false [, int $depth = 512 [, int $options = 0 ]]] )
    接受一个 JSON 编码的字符串并且把它转换为 PHP 变量

    参数

    json
    待解码的 json string 格式的字符串。

    这个函数仅能处理 UTF-8 编码的数据。

    Note:

    PHP implements a superset of JSON as specified in the original » RFC 7159.

    assoc
    当该参数为 TRUE 时,将返回 array 而非 object 。

    Antwort
    0
  • 漂亮男人

    漂亮男人2017-05-16 13:17:05

    $bb ->[0]['name'];一样,跟普通数组类似,就是多了->

    Antwort
    0
  • PHP中文网

    PHP中文网2017-05-16 13:17:05

    $bb[0]->name

    Antwort
    0
  • StornierenAntwort