Умный фильтр формурует инпуты с "кодаброй" пример: ?arrFilter_245_123456=Y&...
После перезагрузки умный фильтр преобразовывает свою "кодабру" в нормальный массив arrFilter который находится в global
Иногда нужно подстраиваться под умный фильтр битрикса
arFilter_294_142357370 разберем по частям
arFilter - это фильтр
294 - ID свойства
142357370 - хитроумный код
Как же генерируются эти цифры хитроумного кода?
$key это ID значения
пример генерации
вывод будет следующий
872160723
2868202601
3723656447
1296916846
977949176
1519245341
764078219
3028531505
3280243111
1574968324
719793298
3018751272
3303624126
1414942767
592535737
1906346974
111655752
2679040754
3903445604
1993166791
30048081
2562928363
4022607485
2138768364
142357370
1757133471
532449801
2260065203
4055034661
1876328070
416370192
2178424746
4141821756
1717580461
291963451
4012090960
После перезагрузки умный фильтр преобразовывает свою "кодабру" в нормальный массив arrFilter который находится в global
Иногда нужно подстраиваться под умный фильтр битрикса
/catalog/?arFilter_294_142357370=Y&set_filter=Y |
arFilter_294_142357370 разберем по частям
arFilter - это фильтр
294 - ID свойства
142357370 - хитроумный код
Как же генерируются эти цифры хитроумного кода?
abs(crc32(htmlspecialcharsbx($key))); |
пример генерации
$property_enums = CIBlockPropertyEnum::GetList(Array("id"=>"asc"), Array("IBLOCK_ID"=>14, "CODE"=>"CATEGORY")); while($enum_fields = $property_enums->GetNext()){ print abs(crc32(htmlspecialcharsbx($enum_fields[ID])))."<br />"; } |
вывод будет следующий
872160723
2868202601
3723656447
1296916846
977949176
1519245341
764078219
3028531505
3280243111
1574968324
719793298
3018751272
3303624126
1414942767
592535737
1906346974
111655752
2679040754
3903445604
1993166791
30048081
2562928363
4022607485
2138768364
142357370
1757133471
532449801
2260065203
4055034661
1876328070
416370192
2178424746
4141821756
1717580461
291963451
4012090960