/
vshmidt
/
php
Обзор
Документация
Войти
/
vshmidt
/
php
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
sapi/cli/tests/bug80092.phpt
46 строк
1022 B
Arnaud Le Blanc
Make OPcache non-optional
27 июл 2025, 10:40
27 июл 2025, 10:40
7b4c14d
Код
Авторство
О чём код?
--TEST-- Bug #80092 (ZTS + preload = segfault on shutdown) --SKIPIF-- <?php include 'skipif.inc'; if (substr(PHP_OS, 0, 3) == 'WIN') { die ("skip not for Windows"); } $extDir = ini_get('extension_dir'); if (!file_exists($extDir . '/opcache.so')) { die ('skip opcache shared object not found in extension_dir'); } ?> --FILE-- <?php $cmd = [ PHP_BINARY, '-dextension_dir=' . ini_get('extension_dir'), '-dopcache.enable=1', '-dopcache.enable_cli=1', '-dopcache.preload=' . __DIR__ . '/preload.inc', '-v' ]; $proc = proc_open($cmd, [['null'], ['pipe', 'w'], ['redirect', 1]], $pipes); $output = stream_get_contents($pipes[1]); // Ignore warnings if opcache loads twice or duplicate modules are loaded by searching for the preloaded marker $flag = false; foreach (explode("\n", $output) as $line) { if ($line === "preloaded") { $flag = true; } if ($flag) { echo $line, "\n"; } } ?> --EXPECTF-- preloaded PHP %s Copyright (c) The PHP Group %AZend Engine %s %A with Zend OPcache %a