У меня есть массив со следующим содержимым:
$tester
array(1) {
[0]=>
object(CategoryItem)#79 (17) {
["type"]=>
string(0) ""
["addedInVersion"]=>
string(4) "0.02"
["lastUpdatedInVersion"]=>
string(4) "0.02"
["AToZ"]=>
bool(false)
["name"]=>
string(22) "Page Name"
["scopeNotes"]=>
string(0) ""
["historyNotes"]=>
string(13) "Added in 0.02"
["broaderItems"]=>
array(0) {
}
Я хочу высказать свое имя, если это имя страницы страницы, а затем использовать это в выражении if.
У меня есть только эти ошибки, я также пробовал $tester-> CategoryItem-> name, но не радость.
Есть ли что-то очевидное, что мне не хватает?
у вас есть некоторые утечки в вашем понимании PHP-OP, вы должны исправить их, следуя некоторым учебным пособиям вроде этих:
http://www.killerphp.com/tutorials/object-oriented-php/
http://code.tutsplus.com/tutorials/object-oriented-php-for-beginners--net-12762
http://www.tutorialspoint.com/php/php_object_oriented.htm
Теперь, чтобы ответить на ваш вопрос, ваш код должен быть следующим:
$the_name = $tester[0]->name;
if($the_name == 'whatever value you want') {
echo $the_name;
}
прежде всего, ваша начальная переменная - это массив, поэтому $tester[0]
, тогда эта позиция является объектом класса CategoryItem
поэтому вы используете область: $tester[0]->value
Что касается последнего из ваших значений в свойствах класса, broaderItems
, это снова массив, поэтому для доступа к одному из его значений вам нужно будет вызвать его так:
$tester[0]->broaderItems[0];//or whatever the keys you will have here
Надеюсь это поможет! : D
Вам нужно получить к нему доступ так:
$name = $tester[0]->name;
echo $name;