
SplFixedArray::__unserialize() 함수를 사용하여 데이터를 unserialize 할 때 오류가 발생하는 이유는, unserialize() 함수가 SplFixedArray 인스턴스를 반환하지 않기 때문입니다.
SplFixedArray::__unserialize() 함수를 사용하려면, unserialize() 함수 대신 SplFixedArray::__unserialize() 함수를 직접 호출해야 합니다.
#hostingforum.kr
php
$splFixedArray = new SplFixedArray(5);
$splFixedArray[0] = 'apple';
$splFixedArray[1] = 'banana';
$splFixedArray[2] = 'cherry';
$splFixedArray[3] = 'date';
$splFixedArray[4] = 'elderberry';
$data = serialize($splFixedArray);
// unserialize() 함수 대신 SplFixedArray::__unserialize() 함수를 직접 호출합니다.
$splFixedArrayUnserialized = unserialize($data, ['class_map' => ['SplFixedArray' => 'SplFixedArray']]);
print_r($splFixedArrayUnserialized);
위 코드를 실행하면, SplFixedArray 인스턴스가 정상적으로 unserialize 됩니다.
2025-07-20 20:57