2012-07-03 2 views
1

다른 마지막 함수 만 사용하여 쿼리의 속성을 가진 모든 행을 표시 할 수 있습니까? fetch_object();와 다른 점 여기 "while"이없는 쿼리 함수의 루프

내 쿼리입니다 : 나에게 하나 개의 행을 보여주는

$dbo_training = $db->query("select * from tabela where id='$tr'")->fetch_object(); 

...

+1

* 왜 * while을 사용하여 루핑하는 것을 피하기를 원합니까? – eggyal

+0

나는 eggyal과 같은 질문을 스스로에게 물었다. 진짜 필요인가요, 아니면 호기심이 궁금합니까? – Doug

답변

0

확실하지 내가 completley 당신을 이해하지만, 당신이 원하는 것은 모든 결과의 배열 인 경우, 메서드 fetch_object()은 정의에 따라 첫 번째 행만 반환합니다. fetch_assoc()을 사용하여 모든 결과가 포함 된 배열을 가져 오십시오.

0

당신이 사용하고있는 ORM을 모르지만 PDO (PHP 표준 데이터베이스 접근기)를 사용하기 위해서는 fetchAll()을 호출해야합니다. 자신의 라이브러리를 사용하고 있다면 매우 강력한 PDO을 찾아야합니다!

0

mysqli::fetch_object()을 사용하고 계신 것으로 보입니다. 그렇다면 mysqli::fetch_all을 보길 원할 것입니다.»모든 결과 행을 연관 배열, 숫자 배열 또는 둘 모두로 가져옵니다. (그러나 분명히 객체 배열이 아닙니다 ...) 객체가 필요하면 아마 while 루프를 고수해야합니다. (그리고 while 회 돌이 자체에 대해서는 나쁜 점이 없다.)

+0

fetch_all, fetch_assoc 결과가 제로입니다. 이 솔루션을 권장합니까? for ($ i = 0; $ i <$ dbo_training-> num_rows; $ i ++) { – user1248182

+0

for 루프가 while 회 돌이보다 나은 것으로 생각됩니다. 당신은 그것을 할 수 있습니다 - 그러나 그것이 좋은 해결책이되지는 않습니다. – rodneyrehm