Получить конкретное значение из многомерного массива, предоставленного AgileCRM

Я пытаюсь получить первый идентификатор сделки от AgileCRM.

Когда используешь:

$test = json_decode($deal, true);
print_r($test);

Я получаю следующий результат:

Array ( 
[0] => Array ( 
    [colorName] => WHITE 
    [id] => 5686812383117312 
    [apply_discount] => 
    [discount_value] => 0 
    [discount_amt] => 0 
    [discount_type] => Value 
    [name] => New Home Loan 
    [contact_ids] => Array ( 
        [0] => 5645056174194688 
    ) 
    [custom_data] => Array ( 
    ) 
    [products] => Array ( 
    ) 
    [description] => New Lead 
    [expected_value] => 0 
    [milestone] => New Loan 
    [probability] => 10 
    [close_date] => 1521192269 
    [created_time] => 1510824270 
    [milestone_changed_time] => 0 
    [entity_type] => deal
    [notes] => Array ( 
    ) 
    [note_ids] => Array ( 
    ) 
    [note_created_time] => 0 
    [pipeline_id] => 5719238044024832 
    [archived] => 
    [lost_reason_id] => 0 
    [deal_source_id] => 0 
    [total_deal_value] => 0 
    [updated_time] => 1510824270 
    [isCurrencyUpdateRequired] => 1 
    [currency_conversion_value] => 0 
    [tags] => Array ( 
    ) 
    [tagsWithTime] => Array ( 
    ) 
    [contacts] => Array ( 
        [0] => Array ( 
            [id] => 5645056174194688 
            [type] => PERSON 
            [properties] => Array ( 
                [0] => Array ( 
                    [type] => SYSTEM 
                    [name] => first_name 
                    [value] => piet 
                ) 
                [1] => Array ( 
                    [type] => SYSTEM 
                    [name] => last_name 
                    [value] => pompies 
                ) 
                [2] => Array ( 
                    [type] => SYSTEM 
                    [name] => name 
                    [value] => 
                ) 
            ) 
        ) 
    ) 
    [owner] => Array ( 
        [id] => 5178546118721536 
        [domain] => domainname 
        [email] => myemail@email.com 
        [phone] => 
        [name] => Piet Pompies 
        [pic] => https://d1gwclp1pmzk26.cloudfront.net/img/gravatar/48.png 
        [schedule_id] => Piet Pompies
        [calendar_url] => https://homeside.agilecrm.com/calendar/Piet_Pompies
        [calendarURL] => https://homeside.agilecrm.com/calendar/Piet_Pompies
    ) 
)

)

Я хочу повторить "5686812383117312" из "[id] => 5686812383117312" (4-я строка в массиве выше)

Я пробовал заявления "foreach", но мой опыт в этом ограничен и, похоже, не могу понять это правильно.

Любая помощь будет оценена.

1 ответ

Решение

Для доступа к полю ID вам необходимо:

  1. получить первый ключ массива
  2. Доступ к обязательному полю

Массив:

Array ( //$test
  [0] => Array (  //first key [0] 
      [colorName] => WHITE 
      [id] => 5686812383117312  //the required field ['id']
      [apply_discount] => 

PHP:

$test = json_decode($deal, true);
print_r($test);

echo $test[0]['id']; //Output: 5686812383117312
Другие вопросы по тегам