Tôi có một đối tượng php lớn mà tôi muốn tuần tự hóa và lưu trữ trong cơ sở dữ liệu MySql. Bảng mã hóa là UTF-8
và cột để giữ mã hóa đối tượng được tuần tự hóa cũng là UTF-8
.Lưu trữ một đối tượng được tuần tự hóa trong cơ sở dữ liệu MySql
Vấn đề là đối tượng chứa chuỗi văn bản chứa ký tự tiếng Pháp.
Ví dụ:
Merci d'avoir passé commande avec Lovre. Voici le récapitulatif de votre commande
Khi tôi serialize các đối tượng sau đó unserialize nó một lần nữa trực tiếp chuỗi được duy trì và là định dạng chính xác.
Tuy nhiên, khi tôi lưu trữ các đối tượng serialized vào một cơ sở dữ liệu MySql sau đó lấy nó một lần nữa sau đó unserialize nó chuỗi trở nên như thế này:
Merci d'avoir passé commande avec Lovre. Voici le récapitulatif de votre commande
họ gặp khó khăn khi tôi lưu trữ các đối tượng trong cơ sở dữ liệu.
Ghi chú:
- Các đối tượng được lưu trữ sử dụng đẩy ORM.
- Loại cột là
text
. - Chuỗi được lưu trữ và đọc từ tệp html.
Mã hóa tệp của bạn là gì? – alexn
Bạn có thể thử base_64 mã hóa nó nhưng bạn không cần phải làm điều đó. Loại cột cơ sở dữ liệu là gì? Bạn đã kiểm tra cài đặt kết nối cơ sở dữ liệu trong php chưa? –
@TheSilencer loại cột cơ sở dữ liệu là văn bản. Kết nối cơ sở dữ liệu được thực hiện bằng PROPEL. – Songo