提问者:小点点

将数组转换为对象并打印结果


我有这个对象和数组数据:

   stdClass Object
    (
        [meta_title] => title
        [meta_description] => 
        [categories] => Array
            (
                [0] => stdClass Object
                    (
                        [name] => cat title
                    )
    
                [1] => stdClass Object
                    (
                        [name] =>cat title 2
                    )
          
            )
    
        )

在实际操作中,我需要使用foreach方法打印categoriesname。 我怎么才能打印这个?!

编辑:

在我的控制器中,我有:

public function index()
{
    helper('text');
    $data = array(
        'meta_title' => 'title',
        'meta_description' => '',
        'categories' => $this->postModel->getNewsCategories(),      
    );

    return view('blog/index', array( 'categories' => (object)$data));
}

鉴于:

<?php foreach ($categories as $category) : ?>
  <a href="#"><?php echo esc($category->name);?></a>
<?end foreach;?>

但我看到了这个错误:

Trying to get property 'name' of non-object

共1个答案

匿名用户

您可以使用下面的代码使用foreach循环获取类别名称。

foreach($YOU_STD_CLASS_DATA_VARIABLE->categories as $category) {
    echo $category->name;
}

谢谢。