Same filename in this branch
  1. 10 update.php
  2. 10 core/assets/scaffold/files/update.php
  3. 10 core/lib/Drupal/Core/Database/Query/Update.php
  4. 10 core/lib/Drupal/Core/Database/Driver/pgsql/Update.php
  5. 10 core/modules/mysql/src/Driver/Database/mysql/Update.php
  6. 10 core/modules/pgsql/src/Driver/Database/pgsql/Update.php
  7. 10 core/modules/sqlite/src/Driver/Database/sqlite/Update.php
  8. 10 core/tests/Drupal/Tests/Composer/Plugin/Scaffold/fixtures/drupal-assets-fixture/assets/update.php
Same filename and directory in other branches
  1. 4.6.x update.php
  2. 4.7.x update.php
  3. 5.x update.php
  4. 6.x update.php
  5. 7.x update.php
  6. 8.9.x update.php
  7. 9 update.php

The PHP page that handles updating the Drupal installation.

All Drupal code is released under the GNU General Public License. See COPYRIGHT.txt and LICENSE.txt files in the "core" directory.

File

update.php
View source
<?php

/**
 * @file
 * The PHP page that handles updating the Drupal installation.
 *
 * All Drupal code is released under the GNU General Public License.
 * See COPYRIGHT.txt and LICENSE.txt files in the "core" directory.
 */
use Drupal\Core\Update\UpdateKernel;
use Symfony\Component\HttpFoundation\Request;
$autoloader = (require_once 'autoload.php');

// Disable garbage collection during test runs. Under certain circumstances the
// update path will create so many objects that garbage collection causes
// segmentation faults.
if (drupal_valid_test_ua()) {
  gc_collect_cycles();
  gc_disable();
}
$kernel = new UpdateKernel('prod', $autoloader, FALSE);
$request = Request::createFromGlobals();
$response = $kernel
  ->handle($request);
$response
  ->send();
$kernel
  ->terminate($request, $response);