반응형
Dectrine에 액세스하는 방법 단순 쿼리 "모든 결과 찾기"
이것은 제 첫번째 "모두 찾기" 간단한 질문입니다.목적은 레코드 하나를 임의로 선택한 다음 "참조" 값(바이블 애너그램 테이블의 필드)을 반향하는 것입니다.저는 무작위 선택을 위해 PHP의 array_rand를 사용하고 있습니다.도움이 필요한 것은 결과 arrany_rand() 배열에서 'reference' 값에 접근하는 방법입니다.
$Bible_anagram_reference = NULL;
/**
* @var \AMDatabase\Entity\TheVerse\BibleAnagrams $result
*/
$result = $this->getDoctrineEntityManager()
->getRepository(get_class($this->getEntityBibleAnagrams()))
->findAll();
if (is_array($result) && count($result) > 0) {
/**
* @var \AMDatabase\Entity\TheVerse\BibleAnagrams $value
*/
$value = array_rand($result, 1);
echo "Bible Ananagram: " . $result[$value]['reference'] . "\r\n";
exit;
}
무작위로 선택한 레코드는 다음과 같은 결과를 제공합니다.
$result = Array
(
[0] => AMDatabase\Entity\TheVerse\BibleAnagrams Object
(
[reference:AMDatabase\Entity\TheVerse\BibleAnagrams:private] => 1
[languageIso:AMDatabase\Entity\TheVerse\BibleAnagrams:private] => en
[bibleAnagramWord:AMDatabase\Entity\TheVerse\BibleAnagrams:private] => Love
[word1:AMDatabase\Entity\TheVerse\BibleAnagrams:private] => Like
[word2:AMDatabase\Entity\TheVerse\BibleAnagrams:private] => Openness
[word3:AMDatabase\Entity\TheVerse\BibleAnagrams:private] => Venerate
[word4:AMDatabase\Entity\TheVerse\BibleAnagrams:private] => Enjoyment
)
);
사용할때
echo "Bible Ananagram: " . $result[$value]['reference'] . "\r\n";
오류가 발생했습니다.
PHP Fatal error: Cannot use object of type AMDatabase\Entity\TheVerse\BibleAnagrams as array
사용할때
echo "Bible Ananagram: " . $result[$value]->reference . "\r\n";
오류가 발생했습니다.
PHP Fatal error: Cannot access private property
저를 도와주셔야 할 더 자세한 사항이 있으시면 조언 부탁드립니다.고마워요, 론
결과는 다음과 같이 반환됩니다.findAll()
함수는 독트린 엔티티의 배열입니다.결과의 값에 액세스하려면 getter 메서드를 사용해야 합니다.다음과 같이 결과를 반복하여 인쇄하고 값을 인쇄합니다.
$results = $this->getDoctrineEntityManager()
->getRepository(get_class($this->getEntityBibleAnagrams()))
->findAll();
foreach ($results as $result) {
echo $result->getLike()."<br />";
echo $result->getOpenness()."<br />";
echo $result->getVenerate()."<br />";
echo $result->getEnjoyment()."<br />";
}
이것이 효과가 있기 위해서는, 당신이 다음과 같은getLike()
,getOpenness()
,getVenerate()
,getEnjoyment()
필요한 매개변수를 반환하는 기타 방법을 선택할 수 있습니다.의 정의 예시getOpenness()
함수:
public function getOpenness()
{
return $this->Openness;
}
언급URL : https://stackoverflow.com/questions/24472572/how-to-access-doctrine-simple-query-findall-results
반응형
'programing' 카테고리의 다른 글
Selecting only first-level elements in jquery (0) | 2023.09.21 |
---|---|
ES6에서 필터링 또는 지도 노드 목록 (0) | 2023.09.21 |
Add-Type-TypeDefinition이 추가되지 않은 클래스를 조건부로 추가하려면 어떻게 해야 합니까? (0) | 2023.09.21 |
og_type을 변경할 수 없습니다. (0) | 2023.09.21 |
로컬 호스트와 원격 호스트의 VS 코드에 SQL 구문 오류가 있음 (0) | 2023.09.21 |