You are here

protected function DbDumpCommand::getTableScript in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 core/lib/Drupal/Core/Command/DbDumpCommand.php \Drupal\Core\Command\DbDumpCommand::getTableScript()

The part of the script for each table.

Parameters

string $table: Table name.

array $schema: Drupal schema definition.

array $data: Data for the table.

Return value

string The table create statement, and if there is data, the insert command.

1 call to DbDumpCommand::getTableScript()
DbDumpCommand::generateScript in core/lib/Drupal/Core/Command/DbDumpCommand.php
Generates the database script.

File

core/lib/Drupal/Core/Command/DbDumpCommand.php, line 410
Contains \Drupal\Core\Command\DbDumpCommand.

Class

DbDumpCommand
Provides a command to dump the current database to a script.

Namespace

Drupal\Core\Command

Code

protected function getTableScript($table, array $schema, array $data) {
  $output = '';
  $output .= "\$connection->schema()->createTable('" . $table . "', " . Variable::export($schema) . ");\n\n";
  if (!empty($data)) {
    $insert = '';
    foreach ($data as $record) {
      $insert .= "->values(" . Variable::export($record) . ")\n";
    }
    $output .= "\$connection->insert('" . $table . "')\n" . "->fields(" . Variable::export(array_keys($schema['fields'])) . ")\n" . $insert . "->execute();\n\n";
  }
  return $output;
}