Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: bezpieczne serializowanie tablic
Forum PHP.pl > Forum > PHP
misiek172
Witam.

Chciałbym zorientować się co uważacie na temat serializowania tablic i czy macie tricki na bezpieczne serializowanie.

Z mojego doświadczenia wynika że serialize() nie jest zbyt bezpieczne, gdy natrafimy na jakieś niechciane znaczki to wszystko się rozleci smile.gif

Macie sprawdzone metody na ulepszenie funkcji serialize() ? Czy staracie się po prostu unikać używania jej?

Pozdrawiam!
darko
Mógłbyś rozwinąć pojęcie "niechciane znaczki" ?
misiek172
w przeszłości zdarzyło mi się parę razy, że rozlatywało się wszystko bo np. literkę polską jakoś liczył jako 2 znaki, zamiast 1
darko
Możesz nadpisać __sleep() i __wakeup() zamieniając przed serializacją polskie ogonki na cokolwiek w jakiejś umownej postaci, następnie w __wakeup() odtworzyć.
misiek172
istnieją jakieś gotowe funkcje, odpowiedniki serialize() i unserialize() ?
darko
Nadpisując metody magiczne __sleep() i __wakeup() możesz wykonać pewne czynności tuż przed zserializowaniem i tuż przed zdeserializowaniem.
misiek172
aa dobra zapomniałem, że można użyć json_decode i json_encode i po problemie smile.gif
Crozin
Serializacja nie ma żadnych problemów ze "znaczkami". Ot, PHP zapisuje sobie liczbę bajtów, nie liczbę znaków.
Bosslog
Jeśli chcesz zaserializowane dane przenosić, kopiować z pliku do pliku i nie martwić się o utratę danych, możesz zakodować zaserializowany ciąg funkcją base64_encode(). Mi to bardzo pomogło.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.