Как получить данные из Object(Object(Array(Object)))

Тема в разделе "PHP Pro", создана пользователем MSW, 21 июл 2009.

Статус темы:
Закрыта.
  1. MSW

    MSW

    Регистр.:
    27 авг 2007
    Сообщения:
    491
    Симпатии:
    408
    как получить значение [userid] из такой вот структуры:

    PHP:
    //данный из $this

    Assault Object 
    [
    attackers] => Map Object (
    [
    map] => Array (
    [
    0] => Participant Object (
    [
    assaultid] => 9815 
    [eventid] => 
    [userid] => 871
    пробовал так:
    PHP:
    $www $this->attackers->map[0]->useruid;
    - никакого результата

    потом просто так:
    PHP:
    print_r($this->attackers->map[0]);
    и так:
    PHP:
    print_r($this->attackers->map);
    выдаёт: Fatal error: Cannot access protected property Map::$map in /****

    также делал следующее:
    PHP:
    $t = new Map(); $t $this->attackers;
    print_r($t);
    ответ такой получаем:
    PHP:
    Map Object (
    [
    map] => Array (
    [
    0] => Participant Object (
    [
    assaultid] => 9815
    [eventid] => 0
    [userid] => 871
    но тоже не могу понять как из этого вытянуть [userid]???
     
  2. Alexitdv

    Alexitdv

    Регистр.:
    4 янв 2008
    Сообщения:
    161
    Симпатии:
    65
    В объекте определена переменная $map, как protected, т.е. к ней нет доступа из вне, а только внутри данного класса.
     
    MSW нравится это.
  3. WerewolfGSM

    WerewolfGSM

    Регистр.:
    4 дек 2006
    Сообщения:
    257
    Симпатии:
    11
    Ну если используешь объекты то почему бы уже не использовать приемы ООП?
    В каждом объекте создай функции типа getИмяПеременной которые возвращают эту переменную.
    Незная структуру обектов, но судя по твоим обращениям к объектам тебе надо так:
    в объекте map создать функицию getUserID которая возвращает userid
    в объекте attackers создать функицию getMapUserID в которую передаешь индекс необходимой карты, функция обращается к нужному объекту map и вызывает его getMapUserID и возвращает его значение.
    Вот как-то так.
     
  4. Kloster

    Kloster

    Регистр.:
    22 июн 2009
    Сообщения:
    216
    Симпатии:
    12
    Тут я бы задал другой вопрос, если нет методов, то зачем объекты городить? Массивов не достаточно?
     
  5. admLoki

    admLoki генератор случайного PHP

    Регистр.:
    14 сен 2006
    Сообщения:
    481
    Симпатии:
    93
  6. hofa

    hofa Создатель

    Регистр.:
    28 май 2008
    Сообщения:
    39
    Симпатии:
    24
    Только не забываем указать
    public getИмяПеременной
     
Статус темы:
Закрыта.