MYSQLI_TYPE_SHORT is used for SMALLINT, not INT以下の定数が定義されています。 この関数の拡張モジュールが PHP 組み込みでコンパイルされているか、 実行時に動的にロードされている場合のみ使用可能です。
MYSQLI_READ_DEFAULT_GROUP
     (int)
    
      my.cnf の指定した名前のグループか、
      あるいは MYSQLI_READ_DEFAULT_FILE
      で指定したファイルからオプションを読み込みます。
     
MYSQLI_READ_DEFAULT_FILE
     (int)
    my.cnf のかわりに、指定したファイルからオプションを 読み込みます。
MYSQLI_OPT_CAN_HANDLE_EXPIRED_PASSWORDS
     (int)
    MYSQLI_OPT_LOAD_DATA_LOCAL_DIR
     (int)
    LOAD DATA LOCAL ステートメントで
      クライアント側の LOCAL データのロードを許可するディレクトリを指定します。
     
    MYSQLI_OPT_CONNECT_TIMEOUT
     (int)
    接続のタイムアウトまでの秒数。
MYSQLI_OPT_READ_TIMEOUT
     (int)
    コマンドの実行結果が返ってくるまでのタイムアウト秒数。PHP 7.2.0 以降で利用可能です。
MYSQLI_OPT_LOCAL_INFILE
     (int)
    
      LOAD LOCAL INFILE コマンドを有効にします。
     
MYSQLI_OPT_INT_AND_FLOAT_NATIVE
     (int)
    整数型と浮動小数点型のカラムをPHPの数値に変換します。mysqlnd でのみ有効です。
MYSQLI_OPT_NET_CMD_BUFFER_SIZE
     (int)
    内部的なコマンド/ネットワークバッファのサイズを指定します。mysqlnd でのみ有効です。
MYSQLI_OPT_NET_READ_BUFFER_SIZE
     (int)
    MySQL のコマンドパケットのボディ部分を読み取る際の、チャンクサイズをバイト単位で指定します。 mysqlnd でのみ有効です。
MYSQLI_OPT_SSL_VERIFY_SERVER_CERT
     (int)
    
MYSQLI_INIT_COMMAND
     (int)
    MySQL サーバーへの接続時に実行するコマンド。 再接続時にも自動的に再実行されます。
MYSQLI_CLIENT_CAN_HANDLE_EXPIRED_PASSWORDS
    (int)
    MYSQLI_CLIENT_FOUND_ROWS
    (int)
    MYSQLI_CLIENT_SSL_VERIFY_SERVER_CERT
    (int)
    MYSQLI_CLIENT_SSL
     (int)
    SSL(暗号化プロトコル)を使用します。このオプションは、アプリケーション プログラムで指定することはできず、MySQL クライアントライブラリの内部で設定します。
MYSQLI_CLIENT_COMPRESS
     (int)
    圧縮プロトコルを使用します。
MYSQLI_CLIENT_INTERACTIVE
     (int)
    
      (wait_timeout のかわりに)interactive_timeout の秒数を使用できるように
      します。クライアントセッションの wait_timeout 変数の値は、interactive_timeout
      変数の値に設定されます。
     
MYSQLI_CLIENT_IGNORE_SPACE
     (int)
    関数名に続く空白文字を許可します。すべての関数名を予約語とします。
MYSQLI_CLIENT_NO_SCHEMA
     (int)
    
      db_name.tbl_name.col_name 形式の使用を禁止します。
     
MYSQLI_CLIENT_MULTI_QUERIESセミコロンで区切られた複数のクエリを、 一度の mysqli_query() コールで実行することを許可します。
MYSQLI_STORE_RESULT
     (int)
    
      結果セットをバッファに格納します。
      値は 0 です。
     
MYSQLI_STORE_RESULT_COPY_DATA
     (int)
    mysqlnd の内部バッファに格納されたフェッチ結果を
      PHP 変数へコピーするために使用されていました。
      デフォルトでは mysqlnd  は、メモリ内の結果を
      重複させないようにコピーではなく参照ロジックを使用します。
      しかし、特定の結果セット、たとえば多数の小さな行を持つ結果セットでは、
      PHP 変数を個別で早期に解放できるコピー方式の方が
      全体的なメモリ使用量を削減る可能性があります。
      mysqlnd のみで利用可能です。
      PHP 8.4.0 で非推奨となりました。
     
    MYSQLI_USE_RESULT
     (int)
    
      結果セットをバッファに格納しません。
      値は 1 です。
     
MYSQLI_ASSOC
     (int)
    行データを、カラム名をインデックスとする配列に格納して返します。
MYSQLI_NUM
     (int)
    行データを、数値インデックスの配列に格納して返します。
MYSQLI_BOTH
     (int)
    行データを、数値インデックス・カラム名インデックスの両方を 保持する配列に格納して返します。
MYSQLI_NOT_NULL_FLAG
     (int)
    
      フィールドは、NOT NULL と定義されています。
     
MYSQLI_PRI_KEY_FLAG
     (int)
    フィールドは、プライマリキーの一部です。
MYSQLI_UNIQUE_KEY_FLAG
     (int)
    フィールドは、ユニークキーの一部です。
MYSQLI_MULTIPLE_KEY_FLAG
     (int)
    フィールドは、インデックスの一部です。
MYSQLI_BLOB_FLAG
     (int)
    
      フィールドは BLOB と定義されています。
     
MYSQLI_UNSIGNED_FLAG
     (int)
    
      フィールドは UNSIGNED と定義されています。
     
MYSQLI_ZEROFILL_FLAG
     (int)
    
      フィールドは ZEROFILL と定義されています。
     
MYSQLI_AUTO_INCREMENT_FLAG
     (int)
    
      フィールドは AUTO_INCREMENT と定義されています。
     
MYSQLI_TIMESTAMP_FLAG
     (int)
    
      フィールドは TIMESTAMP と定義されています。
     
MYSQLI_SET_FLAG
     (int)
    
      フィールドは SET と定義されています。
     
MYSQLI_NUM_FLAG
     (int)
    
      フィールドは NUMERIC と定義されています。
     
MYSQLI_PART_KEY_FLAG
     (int)
    フィールドは、マルチインデックスの一部です。
MYSQLI_GROUP_FLAG
     (int)
    
      フィールドは GROUP BY の一部です。
     
MYSQLI_NO_DEFAULT_VALUE_FLAG
     (int)
    DEFAULT 句がありません。これは NULL や 
      AUTO_INCREMENT カラムには適用されません。なぜならそのようなカラムはそれぞれ
      デフォルト値として NULL および暗黙のデフォルト値を持っているためです。
     
    MYSQLI_TYPE_DECIMAL
     (int)
    
      フィールドは DECIMAL と定義されています。
     
MYSQLI_TYPE_NEWDECIMAL
     (int)
    
      精密な DECIMAL あるいは NUMERIC のフィールドです
     
MYSQLI_TYPE_BIT
     (int)
    
      フィールドは BIT と定義されています
     
MYSQLI_TYPE_TINY
     (int)
    
      フィールドは TINYINT と定義されています。
     
MYSQLI_TYPE_SHORT
     (int)
    
      フィールドは SMALLINT と定義されています。
     
MYSQLI_TYPE_LONG
     (int)
    
      フィールドは INT と定義されています。
     
MYSQLI_TYPE_FLOAT
     (int)
    
      フィールドは FLOAT と定義されています。
     
MYSQLI_TYPE_DOUBLE
     (int)
    
      フィールドは DOUBLE と定義されています。
     
MYSQLI_TYPE_NULL
     (int)
    
      フィールドは DEFAULT NULL と定義されています。
     
MYSQLI_TYPE_TIMESTAMP
     (int)
    
      フィールドは TIMESTAMP と定義されています。
     
MYSQLI_TYPE_LONGLONG
     (int)
    
      フィールドは BIGINT と定義されています。
     
MYSQLI_TYPE_INT24
     (int)
    
      フィールドは MEDIUMINT と定義されています。
     
MYSQLI_TYPE_DATE
     (int)
    
      フィールドは DATE と定義されています。
     
MYSQLI_TYPE_TIME
     (int)
    
      フィールドは TIME と定義されています。
     
MYSQLI_TYPE_DATETIME
     (int)
    
      フィールドは DATETIME と定義されています。
     
MYSQLI_TYPE_YEAR
     (int)
    
      フィールドは YEAR と定義されています。
     
MYSQLI_TYPE_NEWDATE
     (int)
    
      フィールドは DATE と定義されています。
     
MYSQLI_TYPE_INTERVAL
     (int)
    
      MYSQLI_TYPE_ENUM のエイリアスです。
      PHP 8.4.0 で削除されました。
     
MYSQLI_TYPE_ENUM
     (int)
    
      フィールドは ENUM と定義されています。
     
MYSQLI_TYPE_SET
     (int)
    
      フィールドは SET と定義されています。
     
MYSQLI_TYPE_TINY_BLOB
     (int)
    
      フィールドは TINYBLOB と定義されています。
     
MYSQLI_TYPE_MEDIUM_BLOB
     (int)
    
      フィールドは MEDIUMBLOB と定義されています。
     
MYSQLI_TYPE_LONG_BLOB
     (int)
    
      フィールドは LONGBLOB と定義されています。
     
MYSQLI_TYPE_BLOB
     (int)
    
      フィールドは BLOB と定義されています。
     
MYSQLI_TYPE_VAR_STRING
     (int)
    
      フィールドは VARCHAR あるいは BINARY と定義されています。
     
MYSQLI_TYPE_STRING
     (int)
    
      フィールドは STRING と定義されています。
     
MYSQLI_TYPE_CHAR
     (int)
    
      フィールドは TINYINT と定義されています。
      CHAR については MYSQLI_TYPE_STRING を参照ください。
     
MYSQLI_TYPE_GEOMETRY
     (int)
    
      フィールドは GEOMETRY と定義されています。
     
MYSQLI_TYPE_JSON
     (int)
    
      フィールドは JSON と定義されています。
      mysqlnd のみ有効で、MySQL 5.7.8 以降が必要です。
     
MYSQLI_TYPE_VECTOR
     (int)
    
      フィールドは VECTOR と定義されています。
     
MYSQLI_NEED_DATAバインド変数に、さらにデータを使用可能です。
MYSQLI_ENUM_FLAG
     (int)
    
     フィールドが ENUM として定義されています。
     
MYSQLI_BINARY_FLAG
     (int)
    
      フィールドが BINARY として定義されています。
     
MYSQLI_CURSOR_TYPE_FOR_UPDATE
     (int)
    PHP 8.4.0 で削除されました。
MYSQLI_CURSOR_TYPE_NO_CURSOR
     (int)
    
MYSQLI_CURSOR_TYPE_READ_ONLY
     (int)
    
MYSQLI_CURSOR_TYPE_SCROLLABLE
     (int)
    PHP 8.4.0 で削除されました。
MYSQLI_STMT_ATTR_CURSOR_TYPE
     (int)
    
MYSQLI_STMT_ATTR_PREFETCH_ROWS
     (int)
    PHP 8.4.0 で削除されました。
MYSQLI_STMT_ATTR_UPDATE_MAX_LENGTH
     (int)
    
MYSQLI_SET_CHARSET_NAME
     (int)
    
MYSQLI_REPORT_INDEX
     (int)
    クエリ内でインデックスが使われていなかったり間違ったインデックスを使っていたりする場合に報告します。
MYSQLI_REPORT_ERROR
     (int)
    mysqli 関数コールのエラーを報告します。
MYSQLI_REPORT_STRICT
     (int)
    
      エラー時に、警告の代わりに mysqli_sql_exception をスローします。
     
MYSQLI_REPORT_ALL
     (int)
    すべてのオプションを有効にします (すべてを報告します)。
MYSQLI_REPORT_OFF
     (int)
    報告を無効にします。
MYSQLI_DEBUG_TRACE_ENABLED
     (int)
    mysqli_debug() 機能が有効の場合に 1 が設定されます。
MYSQLI_SERVER_PUBLIC_KEY
     (int)
    
MYSQLI_REFRESH_GRANT
     (int)
    権限テーブルをリフレッシュします。 PHP 8.4.0 で非推奨となりました。
MYSQLI_REFRESH_LOG
     (int)
    
      ログをフラッシュします。SQL 文
      FLUSH LOGS を実行するのと同じです。
      PHP 8.4.0 で非推奨となりました。
     
MYSQLI_REFRESH_TABLES
     (int)
    
      テーブルキャッシュをフラッシュします。SQL 文
      FLUSH TABLES を実行するのと同じです。
      PHP 8.4.0 で非推奨となりました。
     
MYSQLI_REFRESH_HOSTS
     (int)
    
      ホストキャッシュをフラッシュします。SQL 文
      FLUSH HOSTS を実行するのと同じです。
      PHP 8.4.0 で非推奨となりました。
     
MYSQLI_REFRESH_REPLICA
     (int)
    
      MYSQLI_REFRESH_SLAVE のエイリアスです。
      PHP 8.1.0 以降で利用可能です。PHP 8.4.0 で非推奨となりました。
     
MYSQLI_REFRESH_STATUS
     (int)
    
      状態変数をリセットします。SQL 文
      FLUSH STATUS を実行するのと同じです。
      PHP 8.4.0 で非推奨となりました。
     
MYSQLI_REFRESH_THREADS
     (int)
    スレッドキャッシュをフラッシュします。 PHP 8.4.0 で非推奨となりました。
MYSQLI_REFRESH_SLAVE
     (int)
    
      レプリケーションのスレーブ側のサーバーで、
      マスタサーバーの情報をリセットしてスレーブを再起動します。
      SQL 文
      RESET SLAVE を実行するのと同じです。
      PHP 8.4.0 で非推奨となりました。
     
MYSQLI_REFRESH_MASTER
     (int)
    
      レプリケーションのマスタ側のサーバーで、
      バイナリログインデックスにあるバイナリログファイルを削除してインデックスファイルを切り詰めます。
      SQL 文
      RESET MASTER を実行するのと同じです。
      PHP 8.4.0 で非推奨となりました。
     
MYSQLI_REFRESH_BACKUP_LOG
     (int)
    MYSQLI_TRANS_COR_AND_CHAIN
     (int)
    "AND CHAIN" を mysqli_commit() あるいは mysqli_rollback() に追加します。
MYSQLI_TRANS_COR_AND_NO_CHAIN
     (int)
    "AND NO CHAIN" を mysqli_commit() あるいは mysqli_rollback() に追加します。
MYSQLI_TRANS_COR_RELEASE
     (int)
    "RELEASE" を mysqli_commit() あるいは mysqli_rollback() に追加します。
MYSQLI_TRANS_COR_NO_RELEASE
     (int)
    "NO RELEASE" を mysqli_commit() あるいは mysqli_rollback() に追加します。
MYSQLI_TRANS_START_READ_ONLY
     (int)
    mysqli_begin_transaction() で、 トランザクションを "START TRANSACTION READ ONLY" で開始します。
MYSQLI_TRANS_START_READ_WRITE
     (int)
    mysqli_begin_transaction() で、 トランザクションを "START TRANSACTION READ WRITE" で開始します。
MYSQLI_TRANS_START_WITH_CONSISTENT_SNAPSHOT
     (int)
    トランザクションを "START TRANSACTION WITH CONSISTENT SNAPSHOT" で開始します。
MYSQLI_CLIENT_SSL_DONT_VERIFY_SERVER_CERT
     (int)
    MySQL 5.6.5 以降が必要です。
MYSQLI_IS_MARIADB
     (bool)
    mysqli 拡張モジュールが MariaDB クライアントライブラリを使ってビルドされているかどうか。 PHP 8.1.2 以降が必要です。
MYSQLI_ASYNC
     (int)
    mysqlnd でのみ利用可能です。
     
    MYSQLI_ON_UPDATE_NOW_FLAG
     (int)
    Note that although CHAR is an explicite string type within MySQL,
MYSQLI_TYPE_CHAR is interpreted the same way as MYSQLI_TYPE_TINY, which is the TINYINT numeric type within MySQL.
As a consequence, you cannot distinguish these two column types by using their respective type index, as both are set to integer one (1).