Прочитать настройки, изменить их в запросе и восстановить

Фактические данные получены от локального PHP CLI и расширения SQLSRV; соединение с базой не открывалось.

Наблюдаемый результат программы
НаблюдениеРезультат
Снимков: до / configure / ini_set / после4
WarningsReturnAsErrors после configure0
Буфер драйвера после configure, КБ64
configure сохранил прежнее значение ini_getда
Буфер драйвера после ini_set, КБ96
Буфер ini_get после ini_set, КБ96
Исходные INI и значения драйвера восстановленыда
Настройки журнала остались прежнимида
Изменялся файл php.iniнет
Открывались соединения с базойнет
Строки и дополнительные наблюдения
{
    "before": {
        "WarningsReturnAsErrors": {
            "ini": "1",
            "driver": 1
        },
        "LogSubsystems": {
            "ini": "0",
            "driver": 0
        },
        "LogSeverity": {
            "ini": "0",
            "driver": 0
        },
        "ClientBufferMaxKBSize": {
            "ini": "10240",
            "driver": 10240
        }
    },
    "after_configure": {
        "WarningsReturnAsErrors": {
            "ini": "1",
            "driver": 0
        },
        "LogSubsystems": {
            "ini": "0",
            "driver": 0
        },
        "LogSeverity": {
            "ini": "0",
            "driver": 0
        },
        "ClientBufferMaxKBSize": {
            "ini": "10240",
            "driver": 64
        }
    },
    "after_ini_set": {
        "WarningsReturnAsErrors": {
            "ini": "1",
            "driver": 0
        },
        "LogSubsystems": {
            "ini": "0",
            "driver": 0
        },
        "LogSeverity": {
            "ini": "0",
            "driver": 0
        },
        "ClientBufferMaxKBSize": {
            "ini": "96",
            "driver": 96
        }
    },
    "after_restore": {
        "WarningsReturnAsErrors": {
            "ini": "1",
            "driver": 1
        },
        "LogSubsystems": {
            "ini": "0",
            "driver": 0
        },
        "LogSeverity": {
            "ini": "0",
            "driver": 0
        },
        "ClientBufferMaxKBSize": {
            "ini": "10240",
            "driver": 10240
        }
    },
    "request_only": true,
    "configuration_file_written": false,
    "logging_note": "Logging settings read, never changed; no server commands or log-event demo."
}

При самостоятельном запуске рядом с example.php создаются result.json с данными и metrics.json с проверками.