[php-src] Issue #20308: Потеря данных при преобразован ия чисел
| From: | aub2000 | Date: | Mon, 27 Oct 2025 14:20:39 +0000 |
| Subject: | [php-src] Issue #20308: Потеря данных при преобразован ия чисел | ||
| Groups: | php.bugs | ||
| Request: | Send a blank email to php-bugs+get-251127@lists.php.net to get a copy of this message | ||
Issue: https://github.com/php/php-src/issues/20308
Author: aub2000
From manual page: https://php.net/function.gmp-export
Функция gmp_export() должна выдавать в качестве результата
бинарную строку длина которой указывается во втором
параметре. Но при преобразовании нуля "0" функция
возвращает в качестве результата пустую строку длиной
0 байт независимо от значения второго параметра. Такое
поведение функции недопустимо так как приводит к
фактической потере данных при преобразовании и делает
невозможным их восстановление.
Применяя функцию gmp_export() для упаковки числа в бинарный
формат программист надеется на адекватное
воспроизведение исходного числа из бинарной строки
при использовании функции gmp_import(), но в данном случае
эта логика нарушается.
Программисты «благодаря» этой несуразности, должны
писать в своих программах костыли для парирования
этой ситуации.
Прошу привести работу функции к естественному
порядку.