intl-icu-data-tables icon indicating copy to clipboard operation
intl-icu-data-tables copied to clipboard

Does not work with php7 or icu data > 4.8 ?

Open cebe opened this issue 9 years ago • 4 comments

I just installed the app locally using php 7.0.3 and icu 52.1 and I get errors when rules are generated:

SiteController::getNumberThatSatisfiesCondition() gets called with arguments like 'v = 0 && i % 10 = 1 && i % 100 !...' which cause the eval to fail. seems the format of rules has changed in some version of icu data?

cebe avatar Mar 02 '16 14:03 cebe

commented the failing part and it prints the rules for russian like this:

one     v = 0 and i % 10 = 1 and i % 100 != 11 @=teger 1, 21, 31, 41, 51, 61, 71, 81, 101, 1001, …
many    v = 0 and i % 10 = 0 or v = 0 and i % 10 = 5..9 or v = 0 and i % 100 = 11..14 @=teger 0, 5~19, 100, 1000, 10000, 100000, 1000000, …
other   @=teger 2~4, 22~24, 32~34, 42~44, 52~54, 62, 102, 1002, … @decimal 0.0~1.5, 10.0, 100.0, 1000.0, 10000.0, 100000.0, 1000000.0, …
other   Everything else

while on http://intl.rmcreative.ru/tables?locale=ru they are:

one     n % 10 = 1 and n % 100 != 11
few     n % 10 = 2..4 and n % 100 != 12..14
many    n % 10 = 0 or n % 10 = 5..9 or n % 100 = 11..14
other   Everything else

cebe avatar Mar 02 '16 14:03 cebe

Weird. I wonder what @=teger is...

samdark avatar Mar 02 '16 20:03 samdark

@integer originally but your replacement code replaces in with = :)

cebe avatar Mar 02 '16 22:03 cebe

Ah, that :) Yeah, that was quick and dirty.

samdark avatar Mar 03 '16 11:03 samdark