Hiện tại, ứng dụng của tôi sử dụng bộ nhớ khoảng 7 MB.Mảng lớn chiếm nhiều không gian bộ nhớ hơn
Mảng xuất hiện để sử dụng 700 KB nếu tôi kiểm tra kích thước với strlen(serialize($array))))
.
Nếu sử dụng mảng này trong ứng dụng của tôi và kiểm tra mức sử dụng bộ nhớ (với
memory_get_peak_usage()
) Tôi nhận được 14 MB.Nếu tôi không sử dụng, tôi nhận được 7 MB.
Nếu mảng này mất 700 KB theo thứ tự, tại sao PHP cần 7 MB cho biến này? Hay tôi đang làm điểm chuẩn sai?
Có gì trong mảng/đối tượng này? Đại diện cho các đối tượng thực sự trong bộ nhớ có thể mất nhiều phân bổ hơn là cần thiết cho một phiên bản văn bản. – Brad
Một bảng gồm tất cả các ký tự utf8 và các ký tự ASCII tương đương. Ok, nhưng gấp 10 lần ?? – ellabeauty
Nếu bạn sử dụng 'memory_get_usage' thì sao? 'memory_get_peak_usage' cho bạn thấy cách sử dụng' peak' là – zerkms