# wordpress-seo/18.0/src/helpers/wpdb-helper.php

Yoast SEO – Advanced SEO with real-time guidance and built-in AI, version 18.0. 45 lines.

- Page: https://pluginprobe.com/plugins/wordpress-seo/18.0/code/src/helpers/wpdb-helper.php
- Raw: https://pluginprobe.com/plugins/wordpress-seo/18.0/raw/src/helpers/wpdb-helper.php
- Modified: 2021-11-02T10:24:12+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/wordpress-seo/18.0/code/src/helpers/wpdb-helper.php#L10-L20`.

```php
<?php

namespace Yoast\WP\SEO\Helpers;

use wpdb;

/**
 * A helper object for the wpdb.
 */
class Wpdb_Helper {

	/**
	 * The WordPress database instance.
	 *
	 * @var wpdb
	 */
	private $wpdb;

	/**
	 * Constructs a Wpdb_Helper instance.
	 *
	 * @param param wpdb $wpdb The WordPress database instance.
	 */
	public function __construct( wpdb $wpdb ) {
		$this->wpdb = $wpdb;
	}

	/**
	 * Check if table exists.
	 *
	 * @param string $table The table to be checked.
	 *
	 * @return bool Whether the table exists.
	 */
	public function table_exists( $table ) {
		// phpcs:ignore WordPress.DB.DirectDatabaseQuery.DirectQuery, WordPress.DB.DirectDatabaseQuery.NoCaching, WordPress.DB.PreparedSQL.InterpolatedNotPrepared -- Reason: There is no unescaped user input.
		$table_exists = $this->wpdb->get_var( "SHOW TABLES LIKE '{$table}'" );
		if ( is_wp_error( $table_exists ) || is_null( $table_exists ) ) {
			return false;
		}

		return true;
	}
}

```
