ホームページ > バックエンド開発 > PHPの問題 > PHPのsetattribute()メソッドの使い方

PHPのsetattribute()メソッドの使い方

青灯夜游
リリース: 2023-03-10 21:24:01
オリジナル
2619 人が閲覧しました

PHP では、setAttribute() メソッドを使用してデータベース ハンドルの属性を設定できます。構文形式は「PDO::setAttribute(attribute, value)」です。パラメータ属性は特定の属性名を指定しますPDO オブジェクトの値であり、値はこのプロパティに値を割り当てます。

PHPのsetattribute()メソッドの使い方

このチュートリアルの動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター

PDO オブジェクトが構築されていない場合メソッドの最後のパラメータによって設定された属性オプションは、オブジェクトの作成時に PDO オブジェクトの setAttribute() および getAttribute() メソッドを通じて設定および取得できます。

その中で、setAttribute() メソッドは、データベース ハンドルの属性を設定するために使用できます。構文形式は次のとおりです:

PDO::setAttribute(int $attribute, mixed $value)
ログイン後にコピー

このメソッドには 2 つのメソッドが必要です。最初のパラメータ $attribute は PDO オブジェクトの特定の属性名を提供し、2 番目のパラメータ $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::ATTR_ORACLE_NULLS: (Oracle に限定されず、すべてのドライバーで利用可能) NULL と空の文字列を変換します;

    • #PDO::NULL_NATURAL: 変換なし;

    • PDO::NULL_EMPTY_STRING: 空の文字列を NULL に変換;

    • PDO ::NULL_TO_STRING : NULL を空の文字列に変換します。

  • PDO::ATTR_STRINGIFY_FETCHES: 抽出時に値を文字列に変換します;

  • PDO::ATTR_STATEMENT_CLASS: セットPDOStatement から派生したユーザー指定のステートメント クラス。永続的な PDO インスタンスでは使用できません。 array(string クラス名, array(混合コンストラクター パラメーター)) が必要です;

  • PDO::ATTR_TIMEOUT: タイムアウトの秒数を指定します。異なるドライバー間には違いがある場合があります。たとえば、SQLite はこの値を待った後、書き込み可能なロックの取得を放棄しますが、他のドライバーはこの値を接続または読み取りタイムアウト間隔として解釈する可能性があります。

  • PDO::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 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
php
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート