질문:
여러 열이 있는 데이터베이스에서(예: "name", "age", "sex" 및 "position"), PDO의 fetchAll 메소드를 사용하여 특정 형식의 연관 배열을 검색하는 방법은 무엇입니까? 여기서 각 배열의 키는 지정된 열(예: "name")의 필드입니다. ) 및 값은 해당 키에 해당하는 행입니까?
답변:
PDO의 fetchAll 메소드를 사용하여 다음 플래그를 지정하여 원하는 결과를 얻을 수 있습니다.
<code class="php">->fetchAll(\PDO::FETCH_GROUP|\PDO::FETCH_UNIQUE);</code>
FETCH_GROUP과 FETCH_UNIQUE를 결합하면 PDO는 자동으로 지정된 열별로 결과를 그룹화하고 중복 레코드를 제외하면서 첫 번째 열을 각 그룹의 키로 설정합니다. 이렇게 하면 추가 중첩 수준이나 현재와 같은 후처리 작업이 필요하지 않습니다.
예:
다음 샘플 데이터세트를 고려하세요.
name | age | sex | position |
---|---|---|---|
Antony | 34 | M | programmer |
Sally | 30 | F | manager |
Matthew | 28 | M | designer |
권장되는 가져오기 방법을 사용하면 원하는 결과 배열을 검색할 수 있습니다.
<code class="php">$result = $pdo->query('SELECT * FROM employee')->fetchAll(\PDO::FETCH_GROUP|\PDO::FETCH_UNIQUE); print_r($result);</code>
이렇게 하면 다음과 같은 연관 배열이 출력됩니다.
Array ( [Antony] => Array ( [age] => 34 [sex] => M [position] => programmer ) [Sally] => Array ( [age] => 30 [sex] => F [position] => manager ) [Matthew] => Array ( [age] => 28 [sex] => M [position] => designer ) )
위 내용은 PDO를 사용하여 특정 열로 그룹화된 연관 배열을 검색하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!