Php 将对象转换为数组并获取其值

Php 将对象转换为数组并获取其值,php,symfony4,Php,Symfony4,foreach($this->getdoctor()->getRepository(Personal::class)->findBy(array('uid'=>$id))作为$object){ 在我的代码中,$object返回一个包含数据库中的值和列的对象。我想将该对象转换为数组。我可以使用$array=(array)$object;执行此操作 如果我使用var\u export($array),这将是输出: array ( '' . "\0" . 'App\\Entity\\Persona

foreach($this->getdoctor()->getRepository(Personal::class)->findBy(array('uid'=>$id))作为$object){

在我的代码中,
$object
返回一个包含数据库中的值和列的对象。我想将该对象转换为数组。我可以使用
$array=(array)$object;
执行此操作

如果我使用
var\u export($array)
,这将是输出:

array (
  '' . "\0" . 'App\\Entity\\Personal' . "\0" . 'id' => 5,
  '' . "\0" . 'App\\Entity\\Personal' . "\0" . 'uid' => 43,
  '' . "\0" . 'App\\Entity\\Personal' . "\0" . 'city' => 'Zurich',
)

我想用
$array['city']
获取city的值,但“city”是一个未定义的索引。获取值的最佳方法是什么?

不要使用
findBy
,而是编写一个自定义查询,然后将结果设置为array。如下所示:

正确的方法是使用
$object->getCity()获取值
假设您在
个人
实体中有合适的getter和setter。您能显示您的个人实体类吗?