$database->indexExists() method

Does table have an index with given name?

Available since version 3.0.182.

Example

// simple index check
if($database->indexExists('my_table', 'my_index')) {
  // index named my_index exists for my_table
}

// index check and get array of info if it exists
$info = $database->indexExists('my_table', 'my_index', true);
if($info) {
  // info is raw array of information about index from MySQL
} else {
  // index does not exist
}

Usage

// basic usage
$bool = $database->indexExists(string $table, string $indexName);

// usage with all arguments
$bool = $database->indexExists(string $table, string $indexName, bool $getInfo = false);

Arguments

NameType(s)Description
tablestring
indexNamestring
getInfo (optional)bool

Return arrays of index information rather than boolean true? (default=false) Note that the verbose arrays are the raw MySQL return values from a SHOW INDEX command.

Return value

bool array

Returns one of the following:

  • false: if index does not exist (regardless of $getInfo argument).
  • true: if index exists and $getInfo argument is omitted or false.
  • array: array of arrays with verbose information if index exists and $getInfo argument is true.

$database methods and properties

API reference based on ProcessWire core version 3.0.236

Latest news

  • ProcessWire Weekly #518
    The 518th issue of ProcessWire Weekly brings in all the latest news from the ProcessWire community. Modules, sites, and more. Read on!
    Weekly.pw / 13 April 2024
  • ProFields Table Field with Actions support
    This week we have some updates for the ProFields table field (FieldtypeTable). These updates are primarily focused on adding new tools for the editor to facilitate input and management of content in a table field.
    Blog / 12 April 2024
  • Subscribe to weekly ProcessWire news

“Indeed, if ProcessWire can be considered as a CMS in its own right, it also offers all the advantages of a CMF (Content Management Framework). Unlike other solutions, the programmer is not forced to follow the proposed model and can integrate his/her ways of doing things.” —Guy Verville, Spiria Digital Inc.