2013-02-25 1 views
0

вот OBJ:Как я получаю значение OBJ этикетки

array(2) { 
    [0]=> object(stdClass)#538 (9) 
    { 
     ["term_id"]=> string(3) "152" 
     ["name"]=> string(19) "Éducation physique" 
     ["slug"]=> string(18) "education-physique" 
     ["term_group"]=> string(1) "0" 
     ["term_taxonomy_id"]=> string(3) "159" 
     ["taxonomy"]=> string(11) "product_cat" 
     ["description"]=> string(0) "" 
     ["parent"]=> string(3) "123" 
     ["count"]=> string(1) "3" 
    } 
    [1]=> object(stdClass)#540 (9) 
    { 
     ["term_id"]=> string(3) "123" 
     ["name"]=> string(5) "Sport" 
     ["slug"]=> string(5) "sport" 
     ["term_group"]=> string(1) "0" 
     ["term_taxonomy_id"]=> string(3) "123" 
     ["taxonomy"]=> string(11) "product_cat" 
     ["description"]=> string(0) "" 
     ["parent"]=> string(1) "0" 
     ["count"]=> string(2) "49" 
    } 
} 
mam : 

я пытаюсь получить значение: [term_id] из 152. что мне нужно это «152» значение в переменной , я стараюсь: $product_category->term_id он вернется «ничего» и я стараюсь: $product_category['term_id'] не возвращать «ничего»

Как это «правильный» способ извлечь значение из объекта

заранее спасибо!

ответ

1

Если я читаю вас правильно, а $product_category - это вся переменная, у вас есть два объекта в массиве. Поэтому вам нужно указать PHP, какой элемент массива вы используете, прежде чем пытаться получить доступ к объекту.

Нечто вроде $product_category[0]->term_id должно работать.

+0

Boy, я выглядишь глупо, когда все в одной строке, как это, трудно понять ... ты абсолютно прав ... два объекта, я должен выбрать один ... моя ошибка! – menardmam

+0

Отлично - рады помочь – Hobo

0

Вот еще одно решение:

Преобразование этого объекта в массив с помощью json_decode, а затем получить значения из массива

$array = json_decode($json_string, true); 

$term_id = $array[0]['term_id']; 

ИЛИ, чтобы получить оба значения:

foreach($array as $val){ 
    echo $val['term_id']; 
} 
Смежные вопросы