Я работаю с Symfony 4.2, и у меня очень странная ошибка:
Call to a member function getMetaValue() on null
В этой строке:
$firstName = $firstNameObj->getMetaValue();
Странная вещь, когда я пишу:
var_dump($firstNameObj);
$firstName = $firstNameObj->getMetaValue();
var_dump показывает обычный объект, содержащий заполненное свойство metaKey
, и там, где я отлаживаю, я помещаю die
в этот метод получения:
public function getMetaValue(): ?string
{
var_dump($this);
die('aaaa'.$this->metaValue);
return $this->metaValue;
}
Все выглядит нормально в этих отладочных дампах. И ошибка не прямая, я имею в виду, что она не останавливается на этой строке, а после завершения foreach, вызывающего эту функцию:
foreach ($wpUsers as $wpUser) {
$users[] = $this->getUserFromMultipleTables($wpUser->getId());
}
вся функция, содержащая ошибку:
public function getUserFromMultipleTables($id)
{
$wpUser = $this->wpUsersRepository->findOneBy(['id' => $id]);
$firstNameObj = $this->wpUsermetaRepository->findOneBySomeField($id,'first_name');
$lastNameObj = $this->wpUsermetaRepository->findOneBySomeField($id,'last_name');
// dd($firstNameObj);
$firstName = $firstNameObj->getMetaValue();
$lastName = $lastNameObj->getMetaValue();
$user = new User();
$user->setId($wpUser->getId());
$user->setUsername($wpUser->getUserLogin());
$user->setFirstName($firstName);
$user->setLastName($lastName);
$user->setEmail($wpUser->getUserEmail());
// dd($user);
return $user;
}