![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 651 Pomógł: 116 Dołączył: 3.06.2012 Skąd: Lędziny Ostrzeżenie: (0%) ![]() ![]() |
Czy PHP daje jakąś możliwość skrócenia np. takiej liczby:
12100121023124100023123121000212 ale w taki sposób, aby ją można było potem ponownie przywrócić do takiej samej postaci? Chodzi mi o jakiś skrócony zapis, jakieś kodowanie - cokolwiek. No bo nie chcę takiego czegoś ładować do bazy, a varchar/text/tinytext odpada. Chodzi mi o coś w deseń base64, tylko z odpowiednikiem do samych liczb. Dzięki. |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
1. Dlaczego nie chcesz zapisać tego do bazy w takiej postaci?
2. Pierwszym pomysłem nasuwającym się na myśl, będzie zapisanie liczby w innym systemie liczbowym, np. w 36-nym zamiast w dziesiętnym. base_convert. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 651 Pomógł: 116 Dołączył: 3.06.2012 Skąd: Lędziny Ostrzeżenie: (0%) ![]() ![]() |
Dziękuję, o taką odpowiedź mi chodziło, tylko mam problem z tą funkcją. Mianowicie, w jedną stronę (10 > 36) zamienia, ale jak skopiuję ten zamieniony string i próbuję zamienić to z powrotem na system dziesiątkowy (36 > 10) to niestety już nie jest ten sam ciąg. Możesz mnie nakierować, co robię źle?
10 > 36 efekt: wl4jfpi6j74ogkg8c4c8 36 > 10 efekt: 12100121023124096006044840408848 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 915 Pomógł: 210 Dołączył: 8.09.2009 Skąd: Tomaszów Lubelski/Wrocław Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 2 707 Pomógł: 290 Dołączył: 16.12.2008 Skąd: Śląsk Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 651 Pomógł: 116 Dołączył: 3.06.2012 Skąd: Lędziny Ostrzeżenie: (0%) ![]() ![]() |
Źle się wyraziłem - nie chcę bezpośrednio pakować tego ciągu do bazy w varchar, tylko chcę go w jakiś sposób zakodować, aby był krótszy.
Zauważyłem, że jesli użyję zapisu 4 > 36 to wszystko działa, tyle tylko że jeśli w ciągu nie ma liczby większej niż 3 włącznie. W moim ciągu będą liczby z przedziału 0-4 ZAWSZE, ale ta funkcja jakoś nie potrafi się dogadać z tą czwórką i od momentu wystąpienia tej 4 w ciągu, cały ciąg jest źle wyświetlany. Ktoś wie dlaczego? :/ Ten sam powód - ramka ? |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 17:46 |