Php bir nesne dizisi unserialize olamaz

1 Cevap php

Ben PHP ile çalışıyorum Shift nesneleri bir dizi var. Ben bir veritabanı içinde bu nesneleri saklamak gerekir. Ben veritabanına vardiya katacak bir işlev üzerinde çalışıyorum:

$Serialized_S = get_option('MasterShiftString');
$MasterShiftArray = unserialize($Serialized_S);

if(!$MasterShiftArray)
{
	echo "MasterShiftArray returns false";
}//end if

echo "Serialized_S:";
print_r($Serialized_S); 
echo "<br />MasterShiftString:";
print_r($MasterShiftString); 
echo "<br />end<br />";	



if(!is_array($MasterShiftArray))
{
	echo "MasterShiftArray is not an Array....";
	$MasterShiftArray = array($last_monday_from_date => "");

}//end if
else
{


}//end else	

$WeekShiftArray = $MasterShiftArray;

array_push($WeekShiftArray, $CurrentShift);			

$MasterShiftArray[$last_monday_from_date] = $WeekShiftArray;

$Serialized_s = serialize($MasterShiftArray);

update_option('MasterShiftArray', $Serialized_s);

Tabii ki çalıştırdığınızda ben alıyorum bu ne:

last_monday_from_date: 1260777600
MasterShiftArray returns falseSerialized_S:admin,resource,2,1;admin,resource,2,1;admin,resource,2,1;admin,resource,2,1;
MasterShiftString:
end

What am I doing wrong here? I've tried the base64 encoding, but that doesn't do anything to help. MasterShiftArray is not an Array....

1 Cevap

Bu:

admin,resource,2,1;admin,resource,2,1;admin,resource,2,1;admin,resource,2,1

hiç bir PHP tefrika dizi gibi bir şey görünüyor, bu senin sorunun. = Çöp dışarı çöp.

O Eğer, başa bir diziye bunu kırmak için explode kullanarak içine bakmak gerekir veri biçimi olduğunu varsayarsak ';', daha sonra o dizinin her bir elemanını patlayabilir ','.