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

时间:2020-07-06 14:52:42

标签: php arrays object

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

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

实际上,我需要使用categories name 方法来打印foreach。我该怎么打印?!

编辑:

在我的控制器中,我有:

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

2 个答案:

答案 0 :(得分:0)

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

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

谢谢。

答案 1 :(得分:0)

我认为下面的代码会起作用

@Bean