code: public function getTableNames($schema = '', $refresh = false)
      {
          if (!isset($this->_tableNames[$schema]) || $refresh) {
              $this->_tableNames[$schema] = $this->findTableNames($schema);
          }
  
          return $this->_tableNames[$schema];
      }
docs: Returns all table names in the database.
  @param string $schema the schema of the tables. Defaults to empty string, meaning the current or default schema name.
  If not empty, the returned table names will be prefixed with the schema name.
  @param bool $refresh whether to fetch the latest available table names. If this is false,
  table names fetched previously (if available) will be returned.
  @return string[] all table names in the database.