>백엔드 개발 >PHP 문제 >PHP setattribute() 메소드를 사용하는 방법

PHP setattribute() 메소드를 사용하는 방법

青灯夜游
青灯夜游원래의
2021-06-24 18:09:352597검색

PHP에서는 setAttribute() 메소드를 사용하여 데이터베이스 핸들의 속성을 설정할 수 있습니다. 구문 형식은 "PDO::setAttribute(attribute, value)"입니다. 매개변수 속성은 PDO 객체의 특정 속성 이름을 지정합니다. , value는 값을 할당합니다.

PHP setattribute() 메소드를 사용하는 방법

이 튜토리얼의 운영 환경: Windows 7 시스템, PHP 버전 7.1, DELL G3 컴퓨터

PDO 객체 생성 시 생성자의 마지막 매개변수에 속성 ​​옵션이 설정되어 있지 않으면 다음을 완료할 수 있습니다. 나중에 객체 생성 후 이러한 속성의 값은 PDO 객체의 setAttribute() 및 getAttribute() 메소드를 통해 설정되고 획득됩니다.

그 중 setAttribute() 메소드를 사용하여 데이터베이스 핸들의 속성을 설정할 수 있습니다. 구문 형식은 다음과 같습니다.

PDO::setAttribute(int $attribute, mixed $value)

이 메소드에는 두 개의 매개변수 $attribute가 특정 속성 이름을 제공합니다. PDO 객체의 두 번째 매개변수 $value 매개변수는 지정된 속성에 값을 할당합니다. 사용할 수 있는 일부 공통 속성 이름과 값은 다음과 같습니다.

  • PDO::ATTR_CASE: 열 이름을 지정된 대소문자로 강제합니다.

    • PDO::CASE_LOWER: 열 이름을 강제합니다.

    • PDO::CASE_NATURAL: 데이터베이스 드라이버에서 반환한 열 이름을 유지합니다.

    • PDO::CASE_UPPER: 열 이름을 대문자로 표시합니다.

  • PDO::ATTR_ERRMODE: 오류 보고;

    • PDO::ERRMODE_SILENT: 오류 코드만 설정

    • PDO::ERRMODE_WARNING: E_WARNING 오류 발생;

    • PDO::ERRMODE_EXCEPTION: 예외가 발생합니다.

  • pdo :: att_oracle_nulls : (Oracle에만 국한되지 않음) null 및 빈 문자열 :: null_natural; 빈 문자열을 NULL로 변환

    • PDO::NULL_TO_STRING: NULL을 빈 문자열로 변환합니다.

    • PDO::ATTR_STRINGIFY_FETCHES: 추출 시 값을 문자열로 변환합니다.
    • PDO::ATTR_STATEMENT_CLASS: PDOStatement에서 파생된 사용자 제공 명령문 클래스를 설정합니다. 영구 PDO 인스턴스와 함께 사용할 수 없습니다. array(문자열 클래스 이름, array(혼합 생성자 매개 변수)) 필요
  • PDO::ATTR_TIMEOUT: 시간 초과 시간(초)을 지정합니다. 예를 들어, SQLite는 이 값을 기다린 후 쓰기 가능한 잠금 획득을 포기하지만 다른 드라이버는 이 값을 연결 또는 읽기 시간 초과 간격으로 해석할 수 있습니다. ::ATTR_AUTOCOMMIT: ( OCI, Firebird 및 MySQL에서 사용 가능) 각 개별 문을 자동으로 커밋할지 여부

  • PDO::ATTR_EMULATE_PREPARES: 준비된 문 에뮬레이션을 활성화 또는 비활성화합니다. 일부 드라이버는 로컬 전처리를 지원하지 않거나 제한적으로 지원합니다. 이 설정을 사용하면 PDO가 항상 준비된 문을 에뮬레이트하거나 로컬 준비된 문을 사용하도록 할 수 있습니다. 드라이버가 현재 쿼리를 성공적으로 전처리할 수 없는 경우 항상 준비된 문을 에뮬레이션합니다.

  • PDO::MYSQL_ATTR_USE_BUFFERED_QUERY: (MySQL에서 사용 가능) 버퍼링된 쿼리 사용

  • PDO::ATTR_DEFAULT_FETCH_MODE: 기본값을 설정합니다. 추출 모드.

  • 예: setAttribute() 메소드를 사용하여 데이터베이스 핸들의 속성을 설정

    <?php
        header("Content-Type: text/html;charset=utf-8");
        $pdo = new PDO(&#39;mysql:dbname=test;host=127.0.0.1&#39;,&#39;root&#39;,&#39;root&#39;,$opt);
        $pdo->setAttribute(PDO::ATTR_CASE, PDO::CASE_UPPER);
        echo &#39;PDO::ATTR_CASE属性的值为:&#39;.$pdo -> getAttribute(PDO::ATTR_CASE);
        $pdo->setAttribute(PDO::ATTR_CASE, PDO::CASE_LOWER);
        echo &#39;<br>PDO::ATTR_CASE属性的值为:&#39;.$pdo -> getAttribute(PDO::ATTR_CASE);
        $pdo->setAttribute(PDO::ATTR_CASE, PDO::CASE_NATURAL);
        echo &#39;<br>PDO::ATTR_CASE属性的值为:&#39;.$pdo -> getAttribute(PDO::ATTR_CASE);
    ?>

    실행 결과:
  • PDO::ATTR_CASE属性的值为:1
    PDO::ATTR_CASE属性的值为:2
    PDO::ATTR_CASE属性的值为:0

    권장 학습: "

    PHP 비디오 튜토리얼
  • "

위 내용은 PHP setattribute() 메소드를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.