首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Symfony-3.2“不能进入私有财产.”

Symfony-3.2“不能进入私有财产.”
EN

Stack Overflow用户
提问于 2017-05-20 17:49:56
回答 1查看 6.3K关注 0票数 0

我有个问题。我尝试从DB中获取值并将它们添加到数组中。然后,我希望通过Twig {{ content.language.text_logo }在模板中使用这个数组来呈现。如何将数组中对象的属性更改为"public"?

这是我的IndexController.php

代码语言:javascript
复制
<?php
namespace Seandle\HomeBundle\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Response;

class IndexController extends Controller {
  public function indexAction() {
    return $this->render('SeandleHomeBundle:Default:index.html.twig', array(
      'content' => $this->getLanguage(),
    ));
  }

  private function getLanguage() {
    $repository = $this->getDoctrine()->getRepository('SeandleHomeBundle:SeandleLanguage');
    $languages = $repository->findAll();
    $language = array();
    foreach ($languages as $language_key => $language_value) {
      $language['language'] = array(
        $language_value->languageLocation => array(
          $language_value->languageVariable => $language_value->languageContent
        )
      );
    }
    return $language;
  }
}

这是浏览器截图

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-05-20 18:03:46

如果属性是私有的,通常是通过getter获得的。

代码语言:javascript
复制
$language_value->getLanguageLocation();

我建议你把这个函数移动到服务端,在控制器中调用蚂蚁服务。更多信息:

container.html

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44089105

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档