Некорректная работа Zend Encoder

Daos

Новичок
Некорректная работа Zend Encoder

Обнаружил такой баг, если подвать на вход функции цифру 4, то в заэнкоденой версии стабильно возвращает 0, в незаинкоденой код работает верно возвращая 1. ZendSafeGuard 3.6.0, Optimizer последний.

PHP:
function test($r)
{
    
    if($r >= 4.75)
    {
        return 0;
    }
     else
    {
         return 1;
     }
}
 

tony2001

TeaM PHPClub
OS, платформа - ?
и можно еще закодированный файл, который не работает?

-~{}~ 15.09.05 14:01:

P.S. [email protected] - сюда файл слать.
 

tony2001

TeaM PHPClub
нет, бинарный заенкоденный файл сюда постить не надо, лучше сразу в почту.
 

Daos

Новичок
FreeBSD 4.10-RELEASE-p9 #0: Sun i386
php 4.3.11


странное дело, в простом примере что я привел выше всё работает нормально, в реальном скрипте баг, может это как то связано с тем что на вход функции в реальном скрипте подаётся значение взятое из базы из поля FLOAT?
 

tony2001

TeaM PHPClub
>странное дело, в простом примере что я привел выше всё работает нормально, в реальном скрипте баг.

так сделай нормальный reproduce case.
если из базы получает, то наверняка там в результате строка, верно?
соотв-но, базу и всё остальное убрать, строку оставить.
 

Daos

Новичок
всё оказалось сложнее, дело не в базе, пишу просто в реальном скрипте цифру 4 и всё равно ошибка.

Моделирую тестовый образец, в точности с теми функциями что в реальном скрипте, но без лишних несвязаных с этими функций и прочего, всё работает нормально, в скрипте не работает!!! Базу уже вообще отмёл, не работает и без неё. Чтож за геморой то такой
 

Daos

Новичок
И так найдена причина возникновения бага, вот эта строка

PHP:
setlocale(LC_ALL,'ru_RU.CP1251');
при её наличии заэнкоденый файл работает некорректно

исходник и заэнкоденый пример можно забрать тут http://www.mstudio.ru/primer.zip

Если перед кодированием закоментировать вышеуказаную строку работает коректно, с ней нет. Запускать test.php
 

Daos

Новичок
да

-~{}~ 15.09.05 15:42:

причём именно в этой конфигурации файлов, если поместить их в один то работает корректно
 

tony2001

TeaM PHPClub
кстати, последний оптимайзер - это 10a. доступен на сайте.
попробуйте его - у меня на обоих примерах выводится "4".
 

Daos

Новичок
под виндой с 2.5.7 проблем нет

-~{}~ 15.09.05 16:25:

попробую хостера просить обновить оптимизер
 
Сверху