當前位置: 首頁>>代碼示例>>PHP>>正文


PHP DatabaseUpdater::output方法代碼示例

本文整理匯總了PHP中DatabaseUpdater::output方法的典型用法代碼示例。如果您正苦於以下問題:PHP DatabaseUpdater::output方法的具體用法?PHP DatabaseUpdater::output怎麽用?PHP DatabaseUpdater::output使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在DatabaseUpdater的用法示例。


在下文中一共展示了DatabaseUpdater::output方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: do_clean_math_table

 /**
  * @author Władysław Bodzek <wladek@wikia-inc.com>
  * @modify Piotr Molski <moli@wikia-inc.com>
  */
 public static function do_clean_math_table(DatabaseUpdater $updater)
 {
     $db = $updater->getDB();
     $table = 'math';
     $primaryKey = 'math_inputhash';
     $fields = array('math_inputhash', 'math_outputhash', 'math_html', 'math_mathml');
     $updater->output("Checking {$table} table and removing rows with different encoding than utf8...\n");
     if ($db->tableExists($table)) {
         $updater->output("...scanning table...");
         // Read the whole table
         $allFields = array_unique(array_merge($fields, array($primaryKey)));
         $res = $db->select(" `{$table}`", $allFields, '', __METHOD__);
         // scan for all rows containing text which is not in utf8 encoding
         $wrong = array();
         while ($row = $db->fetchRow($res)) {
             foreach ($fields as $field) {
                 if (!self::is_valid_utf8_text($row[$field])) {
                     $wrong[] = $row[$primaryKey];
                     break;
                 }
             }
         }
         $db->freeResult($res);
         $count = count($wrong);
         $updater->output("ok (found " . count($wrong) . " rows)\n");
         // and finally remove all the malformed rows
         if ($count > 0) {
             $updater->output("...removing malformed rows...");
             $pos = 0;
             $chunkSize = 500;
             while ($pos < $count) {
                 $removing = array_slice($wrong, $pos, $chunkSize);
                 $res = $db->delete($table, array($primaryKey => $removing), __METHOD__);
                 $pos += $chunkSize;
             }
             $updater->output("ok\n");
         }
     }
 }
開發者ID:Tjorriemorrie,項目名稱:app,代碼行數:43,代碼來源:WikiaUpdater.php


注:本文中的DatabaseUpdater::output方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。