[ Index ]

PHP Cross Reference of MediaWiki-1.24.0

title

Body

[close]

/maintenance/language/ -> langmemusage.php (source)

   1  <?php
   2  /**
   3   * Dumb program that tries to get the memory usage for each language file.
   4   *
   5   * This program is free software; you can redistribute it and/or modify
   6   * it under the terms of the GNU General Public License as published by
   7   * the Free Software Foundation; either version 2 of the License, or
   8   * (at your option) any later version.
   9   *
  10   * This program is distributed in the hope that it will be useful,
  11   * but WITHOUT ANY WARRANTY; without even the implied warranty of
  12   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  13   * GNU General Public License for more details.
  14   *
  15   * You should have received a copy of the GNU General Public License along
  16   * with this program; if not, write to the Free Software Foundation, Inc.,
  17   * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
  18   * http://www.gnu.org/copyleft/gpl.html
  19   *
  20   * @file
  21   * @ingroup MaintenanceLanguage
  22   */
  23  
  24  /** This is a command line script */
  25  require_once  __DIR__ . '/../Maintenance.php';
  26  require_once  __DIR__ . '/languages.inc';
  27  
  28  /**
  29   * Maintenance script that tries to get the memory usage for each language file.
  30   *
  31   * @ingroup MaintenanceLanguage
  32   */
  33  class LangMemUsage extends Maintenance {
  34  
  35  	public function __construct() {
  36          parent::__construct();
  37          $this->mDescription = "Dumb program that tries to get the memory usage\n" .
  38              "for each language file";
  39      }
  40  
  41  	public function execute() {
  42          if ( !function_exists( 'memory_get_usage' ) ) {
  43              $this->error( "You must compile PHP with --enable-memory-limit", true );
  44          }
  45  
  46          $langtool = new Languages();
  47          $memlast = $memstart = memory_get_usage();
  48  
  49          $this->output( "Base memory usage: $memstart\n" );
  50  
  51          foreach ( $langtool->getLanguages() as $langcode ) {
  52              Language::factory( $langcode );
  53              $memstep = memory_get_usage();
  54              $this->output( sprintf( "%12s: %d\n", $langcode, ( $memstep - $memlast ) ) );
  55              $memlast = $memstep;
  56          }
  57  
  58          $memend = memory_get_usage();
  59  
  60          $this->output( ' Total Usage: ' . ( $memend - $memstart ) . "\n" );
  61      }
  62  }
  63  
  64  $maintClass = "LangMemUsage";
  65  require_once RUN_MAINTENANCE_IF_MAIN;


Generated: Fri Nov 28 14:03:12 2014 Cross-referenced by PHPXref 0.7.1