DocResult::getWarnings

直近の操作から発生した警告を取得する

説明

public Array mysql_xdevapi\DocResult::getWarnings()

MySQL サーバーに対する直近の操作から発生した警告を取得します。

パラメータ

この関数にはパラメータはありません。

戻り値

直近の操作から発生した警告オブジェクトの配列。 個々のオブジェクトはエラーの 'message' と 'level' と 'code' を定義しています。 エラーが発生していない場合は、空の配列が返されます。

例1 mysql_xdevapi\DocResult::getWarnings の例

<?php
$session = mysql_xdevapi\getSession("mysqlx://user:password@localhost");
$session->sql("DROP DATABASE IF EXISTS addressbook")->execute();
$session->sql("CREATE DATABASE addressbook")->execute();

$schema = $session->getSchema("addressbook");
$create = $schema->createCollection("people");

$create->add('{"name": "Alfred", "age": 18, "job": "Butler"}')->execute();
$create->add('{"name": "Reginald", "age": 42, "job": "Butler"}')->execute();

// ...

$collection = $schema->getCollection("people");

// DocResult オブジェクトを生成
$result = $collection
  ->find('job like :job and age > :age')
  ->bind(['job' => 'Butler', 'age' => 16])
  ->sort('age desc')
  ->execute();

if (!$result->getWarningsCount()) {
    echo "There was an error:\n";
    print_r($result->getWarnings());
    exit;
}

var_dump($result->fetchOne());
?>

上の例の出力は、 たとえば以下のようになります。


There was an error:

Array
(
    [0] => mysql_xdevapi\Warning Object
        (
            [message] => Something bad and so on
            [level] => 2
            [code] => 1365
        )
    [1] => mysql_xdevapi\Warning Object
        (
            [message] => Something bad and so on
            [level] => 2
            [code] => 1365
        )
)