ЧТМ:Отладка: различия между версиями

Материал из ЧТМ
Перейти к навигации Перейти к поиску
Нет описания правки
Нет описания правки
Строка 33: Строка 33:
* [[Документ:BatchTools]]
* [[Документ:BatchTools]]
* [[Документ:PersonalWhitelist]]
* [[Документ:PersonalWhitelist]]
== Проверки ==
=== Перехватчик фаталов ===
<syntaxhighlight lang="php">
// ==========================================
// СУПЕР-АГРЕССИВНЫЙ ПЕРЕХВАТЧИК ФАТАЛОВ (УДАЛИТЬ ПОСЛЕ ОТЛАДКИ)
// ==========================================
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
register_shutdown_function(function() {
    $error = error_get_last();
    if ($error !== null && in_array($error['type'], [E_ERROR, E_PARSE, E_CORE_ERROR, E_COMPILE_ERROR])) {
        echo "<pre style='background:#fee7e6; color:#b12222; padding:20px; border:2px solid #d33; font-size:14px; font-family:monospace; position:fixed; top:0; left:0; width:100%; height:100%; z-index:99999; overflow:auto;'>";
        echo "<b>🔥 ОБНАРУЖЕНА КРИТИЧЕСКАЯ ОШИБКА ПРИ СТАРТЕ:</b>\n\n";
        echo "<b>Файл:</b> " . htmlspecialchars($error['file']) . " (строка " . $error['line'] . ")\n";
        echo "<b>Сообщение:</b> " . htmlspecialchars($error['message']) . "\n";
        echo "\n<b>Стек вызовов (если доступен):</b>\n";
        debug_print_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS);
        echo "</pre>";
        die();
    }
});
</syntaxhighlight>
=== Синтаксис через терминал ===
Сначала:
<code>cd ~/thirdworldcup.ru/public_html</code>
или
<code>cd ~/test.thirdworldcup.ru/public_html</code>
Потом:
<code>php8.5 -l путь к файлу</code>
Например:
<code>php8.5 -l extensions/PersonalWhitelist/includes/ApiQueryPwGroups.php</code>

Версия от 22:31, 25 мая 2026

Терминал

Обновление БД через браузер: https://thirdworldcup.ru/mw-config/

Обновление БД через терминал
  • сначала cd ~/thirdworldcup.ru/public_html
  • потом php8.5 maintenance/run.php update
Скрипт обновления статистики участников
  • php8.5 maintenance/run.php initSiteStats --update --active
Очистка БД от текста безвозвратно удалённых страниц
  • php8.5 maintenance/run.php purgeOldText --purge
Сброс системного кэша локализации

php8.5 maintenance/run.php rebuildLocalisationCache --force

Подстраницы

Служебные

Разработка расширений

Проверки

Перехватчик фаталов

// ==========================================
// СУПЕР-АГРЕССИВНЫЙ ПЕРЕХВАТЧИК ФАТАЛОВ (УДАЛИТЬ ПОСЛЕ ОТЛАДКИ)
// ==========================================
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

register_shutdown_function(function() {
    $error = error_get_last();
    if ($error !== null && in_array($error['type'], [E_ERROR, E_PARSE, E_CORE_ERROR, E_COMPILE_ERROR])) {
        echo "<pre style='background:#fee7e6; color:#b12222; padding:20px; border:2px solid #d33; font-size:14px; font-family:monospace; position:fixed; top:0; left:0; width:100%; height:100%; z-index:99999; overflow:auto;'>";
        echo "<b>🔥 ОБНАРУЖЕНА КРИТИЧЕСКАЯ ОШИБКА ПРИ СТАРТЕ:</b>\n\n";
        echo "<b>Файл:</b> " . htmlspecialchars($error['file']) . " (строка " . $error['line'] . ")\n";
        echo "<b>Сообщение:</b> " . htmlspecialchars($error['message']) . "\n";
        echo "\n<b>Стек вызовов (если доступен):</b>\n";
        debug_print_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS);
        echo "</pre>";
        die();
    }
});

Синтаксис через терминал

Сначала:

cd ~/thirdworldcup.ru/public_html

или

cd ~/test.thirdworldcup.ru/public_html

Потом:

php8.5 -l путь к файлу

Например:

php8.5 -l extensions/PersonalWhitelist/includes/ApiQueryPwGroups.php