2010-09-02 2 views
1

в моем приложении я получить возвращается массив объектов и я пытаюсь получить доступ для доступа к объекту внутри массива, как этот $array[0]->name, но он не работает по какой-то причине,PHP не может получить доступ к объекту в массиве

I попытался получить к нему доступ вот так: $var = $array[0]; $var->name и он показывает мне эту ошибку>Trying to get property of non-object

что здесь происходит? почему я не могу получить доступ к объекту? и как я могу получить к нему доступ? также, было бы лучше, если бы я просто получил многомерный массив вместо массива объектов?

var_dump: //

array(2) { 
    [0]=> 
    object(stdClass)#16 (9) { 
    ["id"]=> 
    string(1) "1" 
    ["name"]=> 
    string(27) "нямам си и идея" 
    ["description"]=> 
    string(19) "емиииии....." 
    ["price"]=> 
    string(3) "823" 
    ["lang"]=> 
    string(2) "bg" 
    ["category"]=> 
    string(1) "0" 
    ["slug"]=> 
    string(7) "shalala" 
    ["status"]=> 
    string(1) "1" 
    ["sid"]=> 
    string(1) "1" 
    } 
    [1]=> 
    object(stdClass)#17 (9) { 
    ["id"]=> 
    string(1) "2" 
    ["name"]=> 
    string(19) "no tyore idea what " 
    ["description"]=> 
    string(22) "are you talking to me " 
    ["price"]=> 
    string(3) "823" 
    ["lang"]=> 
    string(2) "en" 
    ["category"]=> 
    string(1) "0" 
    ["slug"]=> 
    string(7) "shalala" 
    ["status"]=> 
    string(1) "1" 
    ["sid"]=> 
    string(1) "1" 
    } 
} 

vardump из массива $ [0]

object(stdClass)#16 (9) { 
    ["id"]=> 
    string(1) "1" 
    ["name"]=> 
    string(27) "нямам си и идея" 
    ["description"]=> 
    string(19) "емиииии....." 
    ["price"]=> 
    string(3) "823" 
    ["lang"]=> 
    string(2) "bg" 
    ["category"]=> 
    string(1) "0" 
    ["slug"]=> 
    string(7) "shalala" 
    ["status"]=> 
    string(1) "1" 
    ["sid"]=> 
    string(1) "1" 
} 

[решено] = рамка указывала мне на неправильную строке коды ошибки была 10 строк вниз код и я не видел его :(

+0

В сообщении об ошибке говорится, что '$ array [0]' не является объектом. Используйте 'var_dump()' на нем, чтобы увидеть, что внутри. – jmz

+3

Можете ли вы вставить контекст кода? Похоже, что где-то есть опечатка. – tamasd

+0

Grodon, это вывод массива $, в секунду iil добавляет $ array [0] – Aviatrix

ответ

1

вопрос находится где-то в другом месте.

$array[0] НЕ является объектом, поэтому он говорит Trying to get property of non-object.

+0

, которое не решает проблему, и поэтому должно было быть комментарий – Gordon

+1

@Gordon, OK будет помнить в следующий раз. – shamittomar

Смежные вопросы