라이브러리

[PHP] PDOStatement::setFetchMode - 이 명령문에 대한 기본 페치 모드를 설정합니다.




PDOStatement::setFetchMode


PDOStatement::setFetchMode는 PDOStatement 객체의 fetch 모드를 설정하는 메서드입니다. 이 메서드는 fetch 모드를 변경하여 데이터를 가져올 때의 형식을 지정할 수 있습니다.

# fetch 모드


PDOStatement::setFetchMode에서 사용할 수 있는 fetch 모드는 다음과 같습니다.

* PDO::FETCH_ASSOC : 배열의 키가 컬럼 이름이 됩니다.
* PDO::FETCH_BOTH : 배열의 키가 컬럼 이름이 되며, 인덱스도 함께 제공됩니다.
* PDO::FETCH_BOUND : 배열의 키가 컬럼 이름이 되며, 인덱스도 함께 제공되며, 변수에 바인딩됩니다.
* PDO::FETCH_CLASS : 객체의 속성이 컬럼 이름이 됩니다.
* PDO::FETCH_INTO : 객체의 속성이 컬럼 이름이 됩니다.
* PDO::FETCH_LAZY : 객체의 속성이 컬럼 이름이 됩니다.
* PDO::FETCH_NAMED : 배열의 키가 컬럼 이름이 됩니다.
* PDO::FETCH_NUM : 배열의 키가 인덱스가 됩니다.
* PDO::FETCH_OBJ : 객체의 속성이 컬럼 이름이 됩니다.

# 예제


다음 예제는 PDOStatement::setFetchMode를 사용하여 데이터를 가져올 때의 형식을 지정하는 방법을 보여줍니다.

#hostingforum.kr
php

// PDO 연결

$db = new PDO('mysql:host=localhost;dbname=mydb', 'username', 'password');



// 쿼리 실행

$stmt = $db->prepare('SELECT * FROM users');

$stmt->execute();



// fetch 모드 설정

$stmt->setFetchMode(PDO::FETCH_ASSOC);



// 데이터 가져오기

while ($row = $stmt->fetch()) {

    print_r($row);

}



// fetch 모드 변경

$stmt->setFetchMode(PDO::FETCH_BOTH);



// 데이터 가져오기

while ($row = $stmt->fetch()) {

    print_r($row);

}



// fetch 모드 변경

$stmt->setFetchMode(PDO::FETCH_CLASS, 'User');



// 데이터 가져오기

while ($row = $stmt->fetch()) {

    $user = new User();

    $user->load($row);

    print_r($user);

}



class User {

    public $id;

    public $name;

    public $email;



    public function load($data) {

        $this->id = $data['id'];

        $this->name = $data['name'];

        $this->email = $data['email'];

    }

}



이 예제에서는 PDOStatement::setFetchMode를 사용하여 데이터를 가져올 때의 형식을 지정하는 방법을 보여줍니다. fetch 모드는 PDO::FETCH_ASSOC, PDO::FETCH_BOTH, PDO::FETCH_CLASS로 설정되어 있으며, 각 모드별로 데이터를 가져올 때의 형식이 다릅니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 10,077건 / 335 페이지

검색

게시물 검색